{
  "type": "Program",
  "start": 0,
  "end": 28997,
  "loc": {
    "start": {
      "line": 1,
      "column": 0
    },
    "end": {
      "line": 728,
      "column": 0
    }
  },
  "sourceType": "module",
  "body": [
    {
      "type": "ImportDeclaration",
      "start": 0,
      "end": 57,
      "loc": {
        "start": {
          "line": 1,
          "column": 0
        },
        "end": {
          "line": 1,
          "column": 57
        }
      },
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "start": 8,
          "end": 20,
          "loc": {
            "start": {
              "line": 1,
              "column": 8
            },
            "end": {
              "line": 1,
              "column": 20
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 8,
            "end": 20,
            "loc": {
              "start": {
                "line": 1,
                "column": 8
              },
              "end": {
                "line": 1,
                "column": 20
              }
            },
            "name": "trackPromise"
          },
          "local": {
            "type": "Identifier",
            "start": 8,
            "end": 20,
            "loc": {
              "start": {
                "line": 1,
                "column": 8
              },
              "end": {
                "line": 1,
                "column": 20
              }
            },
            "name": "trackPromise"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 22,
          "end": 29,
          "loc": {
            "start": {
              "line": 1,
              "column": 22
            },
            "end": {
              "line": 1,
              "column": 29
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 22,
            "end": 29,
            "loc": {
              "start": {
                "line": 1,
                "column": 22
              },
              "end": {
                "line": 1,
                "column": 29
              }
            },
            "name": "Interop"
          },
          "local": {
            "type": "Identifier",
            "start": 22,
            "end": 29,
            "loc": {
              "start": {
                "line": 1,
                "column": 22
              },
              "end": {
                "line": 1,
                "column": 29
              }
            },
            "name": "Interop"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 36,
        "end": 56,
        "loc": {
          "start": {
            "line": 1,
            "column": 36
          },
          "end": {
            "line": 1,
            "column": 56
          }
        },
        "value": "sketcher/cchelpers",
        "rawValue": "sketcher/cchelpers",
        "raw": "'sketcher/cchelpers'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 58,
      "end": 115,
      "loc": {
        "start": {
          "line": 2,
          "column": 0
        },
        "end": {
          "line": 2,
          "column": 57
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 65,
          "end": 84,
          "loc": {
            "start": {
              "line": 2,
              "column": 7
            },
            "end": {
              "line": 2,
              "column": 26
            }
          },
          "local": {
            "type": "Identifier",
            "start": 65,
            "end": 84,
            "loc": {
              "start": {
                "line": 2,
                "column": 7
              },
              "end": {
                "line": 2,
                "column": 26
              }
            },
            "name": "ConstraintGenerator"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 90,
        "end": 114,
        "loc": {
          "start": {
            "line": 2,
            "column": 32
          },
          "end": {
            "line": 2,
            "column": 56
          }
        },
        "value": "sketcher/constraintgen",
        "rawValue": "sketcher/constraintgen",
        "raw": "'sketcher/constraintgen'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 116,
      "end": 153,
      "loc": {
        "start": {
          "line": 3,
          "column": 0
        },
        "end": {
          "line": 3,
          "column": 37
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 123,
          "end": 129,
          "loc": {
            "start": {
              "line": 3,
              "column": 7
            },
            "end": {
              "line": 3,
              "column": 13
            }
          },
          "local": {
            "type": "Identifier",
            "start": 123,
            "end": 129,
            "loc": {
              "start": {
                "line": 3,
                "column": 7
              },
              "end": {
                "line": 3,
                "column": 13
              }
            },
            "name": "Sketch"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 135,
        "end": 152,
        "loc": {
          "start": {
            "line": 3,
            "column": 19
          },
          "end": {
            "line": 3,
            "column": 36
          }
        },
        "value": "sketcher/sketch",
        "rawValue": "sketcher/sketch",
        "raw": "'sketcher/sketch'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 154,
      "end": 208,
      "loc": {
        "start": {
          "line": 4,
          "column": 0
        },
        "end": {
          "line": 4,
          "column": 54
        }
      },
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "start": 162,
          "end": 167,
          "loc": {
            "start": {
              "line": 4,
              "column": 8
            },
            "end": {
              "line": 4,
              "column": 13
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 162,
            "end": 167,
            "loc": {
              "start": {
                "line": 4,
                "column": 8
              },
              "end": {
                "line": 4,
                "column": 13
              }
            },
            "name": "Point"
          },
          "local": {
            "type": "Identifier",
            "start": 162,
            "end": 167,
            "loc": {
              "start": {
                "line": 4,
                "column": 8
              },
              "end": {
                "line": 4,
                "column": 13
              }
            },
            "name": "Point"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 169,
          "end": 173,
          "loc": {
            "start": {
              "line": 4,
              "column": 15
            },
            "end": {
              "line": 4,
              "column": 19
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 169,
            "end": 173,
            "loc": {
              "start": {
                "line": 4,
                "column": 15
              },
              "end": {
                "line": 4,
                "column": 19
              }
            },
            "name": "Line"
          },
          "local": {
            "type": "Identifier",
            "start": 169,
            "end": 173,
            "loc": {
              "start": {
                "line": 4,
                "column": 15
              },
              "end": {
                "line": 4,
                "column": 19
              }
            },
            "name": "Line"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 175,
          "end": 178,
          "loc": {
            "start": {
              "line": 4,
              "column": 21
            },
            "end": {
              "line": 4,
              "column": 24
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 175,
            "end": 178,
            "loc": {
              "start": {
                "line": 4,
                "column": 21
              },
              "end": {
                "line": 4,
                "column": 24
              }
            },
            "name": "Arc"
          },
          "local": {
            "type": "Identifier",
            "start": 175,
            "end": 178,
            "loc": {
              "start": {
                "line": 4,
                "column": 21
              },
              "end": {
                "line": 4,
                "column": 24
              }
            },
            "name": "Arc"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 185,
        "end": 207,
        "loc": {
          "start": {
            "line": 4,
            "column": 31
          },
          "end": {
            "line": 4,
            "column": 53
          }
        },
        "value": "sketcher/geomobjects",
        "rawValue": "sketcher/geomobjects",
        "raw": "'sketcher/geomobjects'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 209,
      "end": 254,
      "loc": {
        "start": {
          "line": 5,
          "column": 0
        },
        "end": {
          "line": 5,
          "column": 45
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 216,
          "end": 226,
          "loc": {
            "start": {
              "line": 5,
              "column": 7
            },
            "end": {
              "line": 5,
              "column": 17
            }
          },
          "local": {
            "type": "Identifier",
            "start": 216,
            "end": 226,
            "loc": {
              "start": {
                "line": 5,
                "column": 7
              },
              "end": {
                "line": 5,
                "column": 17
              }
            },
            "name": "Constraint"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 232,
        "end": 253,
        "loc": {
          "start": {
            "line": 5,
            "column": 23
          },
          "end": {
            "line": 5,
            "column": 44
          }
        },
        "value": "sketcher/constraint",
        "rawValue": "sketcher/constraint",
        "raw": "'sketcher/constraint'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 255,
      "end": 301,
      "loc": {
        "start": {
          "line": 6,
          "column": 0
        },
        "end": {
          "line": 6,
          "column": 46
        }
      },
      "specifiers": [
        {
          "type": "ImportNamespaceSpecifier",
          "start": 262,
          "end": 275,
          "loc": {
            "start": {
              "line": 6,
              "column": 7
            },
            "end": {
              "line": 6,
              "column": 20
            }
          },
          "local": {
            "type": "Identifier",
            "start": 267,
            "end": 275,
            "loc": {
              "start": {
                "line": 6,
                "column": 12
              },
              "end": {
                "line": 6,
                "column": 20
              }
            },
            "name": "Controls"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 281,
        "end": 300,
        "loc": {
          "start": {
            "line": 6,
            "column": 26
          },
          "end": {
            "line": 6,
            "column": 45
          }
        },
        "value": "sketcher/controls",
        "rawValue": "sketcher/controls",
        "raw": "'sketcher/controls'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 302,
      "end": 337,
      "loc": {
        "start": {
          "line": 7,
          "column": 0
        },
        "end": {
          "line": 7,
          "column": 35
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 309,
          "end": 314,
          "loc": {
            "start": {
              "line": 7,
              "column": 7
            },
            "end": {
              "line": 7,
              "column": 12
            }
          },
          "local": {
            "type": "Identifier",
            "start": 309,
            "end": 314,
            "loc": {
              "start": {
                "line": 7,
                "column": 7
              },
              "end": {
                "line": 7,
                "column": 12
              }
            },
            "name": "Orbit"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 320,
        "end": 336,
        "loc": {
          "start": {
            "line": 7,
            "column": 18
          },
          "end": {
            "line": 7,
            "column": 34
          }
        },
        "value": "controls/orbit",
        "rawValue": "controls/orbit",
        "raw": "'controls/orbit'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 338,
      "end": 374,
      "loc": {
        "start": {
          "line": 8,
          "column": 0
        },
        "end": {
          "line": 8,
          "column": 36
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 345,
          "end": 352,
          "loc": {
            "start": {
              "line": 8,
              "column": 7
            },
            "end": {
              "line": 8,
              "column": 14
            }
          },
          "local": {
            "type": "Identifier",
            "start": 345,
            "end": 352,
            "loc": {
              "start": {
                "line": 8,
                "column": 7
              },
              "end": {
                "line": 8,
                "column": 14
              }
            },
            "name": "Object3"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 358,
        "end": 373,
        "loc": {
          "start": {
            "line": 8,
            "column": 20
          },
          "end": {
            "line": 8,
            "column": 35
          }
        },
        "value": "three/object3",
        "rawValue": "three/object3",
        "raw": "'three/object3'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 375,
      "end": 401,
      "loc": {
        "start": {
          "line": 9,
          "column": 0
        },
        "end": {
          "line": 9,
          "column": 26
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 382,
          "end": 387,
          "loc": {
            "start": {
              "line": 9,
              "column": 7
            },
            "end": {
              "line": 9,
              "column": 12
            }
          },
          "local": {
            "type": "Identifier",
            "start": 382,
            "end": 387,
            "loc": {
              "start": {
                "line": 9,
                "column": 7
              },
              "end": {
                "line": 9,
                "column": 12
              }
            },
            "name": "THREE"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 393,
        "end": 400,
        "loc": {
          "start": {
            "line": 9,
            "column": 18
          },
          "end": {
            "line": 9,
            "column": 25
          }
        },
        "value": "three",
        "rawValue": "three",
        "raw": "'three'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 402,
      "end": 513,
      "loc": {
        "start": {
          "line": 10,
          "column": 0
        },
        "end": {
          "line": 10,
          "column": 111
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 409,
          "end": 421,
          "loc": {
            "start": {
              "line": 10,
              "column": 7
            },
            "end": {
              "line": 10,
              "column": 19
            }
          },
          "local": {
            "type": "Identifier",
            "start": 409,
            "end": 421,
            "loc": {
              "start": {
                "line": 10,
                "column": 7
              },
              "end": {
                "line": 10,
                "column": 19
              }
            },
            "name": "SketcherFont"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 427,
        "end": 512,
        "loc": {
          "start": {
            "line": 10,
            "column": 25
          },
          "end": {
            "line": 10,
            "column": 110
          }
        },
        "value": "json!../../node_modules/three/examples/fonts/droid/droid_sans_regular.typeface.json",
        "rawValue": "json!../../node_modules/three/examples/fonts/droid/droid_sans_regular.typeface.json",
        "raw": "'json!../../node_modules/three/examples/fonts/droid/droid_sans_regular.typeface.json'"
      }
    },
    {
      "type": "ClassDeclaration",
      "start": 515,
      "end": 988,
      "loc": {
        "start": {
          "line": 12,
          "column": 0
        },
        "end": {
          "line": 32,
          "column": 1
        }
      },
      "id": {
        "type": "Identifier",
        "start": 521,
        "end": 535,
        "loc": {
          "start": {
            "line": 12,
            "column": 6
          },
          "end": {
            "line": 12,
            "column": 20
          }
        },
        "name": "CursorPosition"
      },
      "superClass": {
        "type": "MemberExpression",
        "start": 544,
        "end": 557,
        "loc": {
          "start": {
            "line": 12,
            "column": 29
          },
          "end": {
            "line": 12,
            "column": 42
          }
        },
        "object": {
          "type": "Identifier",
          "start": 544,
          "end": 549,
          "loc": {
            "start": {
              "line": 12,
              "column": 29
            },
            "end": {
              "line": 12,
              "column": 34
            }
          },
          "name": "THREE"
        },
        "property": {
          "type": "Identifier",
          "start": 550,
          "end": 557,
          "loc": {
            "start": {
              "line": 12,
              "column": 35
            },
            "end": {
              "line": 12,
              "column": 42
            }
          },
          "name": "Vector3"
        },
        "computed": false
      },
      "body": {
        "type": "ClassBody",
        "start": 558,
        "end": 988,
        "loc": {
          "start": {
            "line": 12,
            "column": 43
          },
          "end": {
            "line": 32,
            "column": 1
          }
        },
        "body": [
          {
            "type": "MethodDefinition",
            "start": 564,
            "end": 675,
            "loc": {
              "start": {
                "line": 13,
                "column": 4
              },
              "end": {
                "line": 17,
                "column": 5
              }
            },
            "computed": false,
            "key": {
              "type": "Identifier",
              "start": 564,
              "end": 575,
              "loc": {
                "start": {
                  "line": 13,
                  "column": 4
                },
                "end": {
                  "line": 13,
                  "column": 15
                }
              },
              "name": "constructor"
            },
            "static": false,
            "kind": "constructor",
            "value": {
              "type": "FunctionExpression",
              "start": 575,
              "end": 675,
              "loc": {
                "start": {
                  "line": 13,
                  "column": 15
                },
                "end": {
                  "line": 17,
                  "column": 5
                }
              },
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 576,
                  "end": 584,
                  "loc": {
                    "start": {
                      "line": 13,
                      "column": 16
                    },
                    "end": {
                      "line": 13,
                      "column": 24
                    }
                  },
                  "name": "notifier"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 586,
                "end": 675,
                "loc": {
                  "start": {
                    "line": 13,
                    "column": 26
                  },
                  "end": {
                    "line": 17,
                    "column": 5
                  }
                },
                "body": [
                  {
                    "type": "ExpressionStatement",
                    "start": 596,
                    "end": 604,
                    "loc": {
                      "start": {
                        "line": 14,
                        "column": 8
                      },
                      "end": {
                        "line": 14,
                        "column": 16
                      }
                    },
                    "expression": {
                      "type": "CallExpression",
                      "start": 596,
                      "end": 603,
                      "loc": {
                        "start": {
                          "line": 14,
                          "column": 8
                        },
                        "end": {
                          "line": 14,
                          "column": 15
                        }
                      },
                      "callee": {
                        "type": "Super",
                        "start": 596,
                        "end": 601,
                        "loc": {
                          "start": {
                            "line": 14,
                            "column": 8
                          },
                          "end": {
                            "line": 14,
                            "column": 13
                          }
                        }
                      },
                      "arguments": []
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 613,
                    "end": 635,
                    "loc": {
                      "start": {
                        "line": 15,
                        "column": 8
                      },
                      "end": {
                        "line": 15,
                        "column": 30
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 613,
                      "end": 634,
                      "loc": {
                        "start": {
                          "line": 15,
                          "column": 8
                        },
                        "end": {
                          "line": 15,
                          "column": 29
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 613,
                        "end": 620,
                        "loc": {
                          "start": {
                            "line": 15,
                            "column": 8
                          },
                          "end": {
                            "line": 15,
                            "column": 15
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 613,
                          "end": 617,
                          "loc": {
                            "start": {
                              "line": 15,
                              "column": 8
                            },
                            "end": {
                              "line": 15,
                              "column": 12
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 618,
                          "end": 620,
                          "loc": {
                            "start": {
                              "line": 15,
                              "column": 13
                            },
                            "end": {
                              "line": 15,
                              "column": 15
                            }
                          },
                          "name": "_x"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "AssignmentExpression",
                        "start": 623,
                        "end": 634,
                        "loc": {
                          "start": {
                            "line": 15,
                            "column": 18
                          },
                          "end": {
                            "line": 15,
                            "column": 29
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 623,
                          "end": 630,
                          "loc": {
                            "start": {
                              "line": 15,
                              "column": 18
                            },
                            "end": {
                              "line": 15,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 623,
                            "end": 627,
                            "loc": {
                              "start": {
                                "line": 15,
                                "column": 18
                              },
                              "end": {
                                "line": 15,
                                "column": 22
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 628,
                            "end": 630,
                            "loc": {
                              "start": {
                                "line": 15,
                                "column": 23
                              },
                              "end": {
                                "line": 15,
                                "column": 25
                              }
                            },
                            "name": "_y"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 633,
                          "end": 634,
                          "loc": {
                            "start": {
                              "line": 15,
                              "column": 28
                            },
                            "end": {
                              "line": 15,
                              "column": 29
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0"
                        }
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 644,
                    "end": 669,
                    "loc": {
                      "start": {
                        "line": 16,
                        "column": 8
                      },
                      "end": {
                        "line": 16,
                        "column": 33
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 644,
                      "end": 668,
                      "loc": {
                        "start": {
                          "line": 16,
                          "column": 8
                        },
                        "end": {
                          "line": 16,
                          "column": 32
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 644,
                        "end": 657,
                        "loc": {
                          "start": {
                            "line": 16,
                            "column": 8
                          },
                          "end": {
                            "line": 16,
                            "column": 21
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 644,
                          "end": 648,
                          "loc": {
                            "start": {
                              "line": 16,
                              "column": 8
                            },
                            "end": {
                              "line": 16,
                              "column": 12
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 649,
                          "end": 657,
                          "loc": {
                            "start": {
                              "line": 16,
                              "column": 13
                            },
                            "end": {
                              "line": 16,
                              "column": 21
                            }
                          },
                          "name": "notifier"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "Identifier",
                        "start": 660,
                        "end": 668,
                        "loc": {
                          "start": {
                            "line": 16,
                            "column": 24
                          },
                          "end": {
                            "line": 16,
                            "column": 32
                          }
                        },
                        "name": "notifier"
                      }
                    }
                  }
                ]
              }
            }
          },
          {
            "type": "MethodDefinition",
            "start": 680,
            "end": 707,
            "loc": {
              "start": {
                "line": 18,
                "column": 4
              },
              "end": {
                "line": 18,
                "column": 31
              }
            },
            "computed": false,
            "key": {
              "type": "Identifier",
              "start": 684,
              "end": 685,
              "loc": {
                "start": {
                  "line": 18,
                  "column": 8
                },
                "end": {
                  "line": 18,
                  "column": 9
                }
              },
              "name": "x"
            },
            "static": false,
            "kind": "get",
            "value": {
              "type": "FunctionExpression",
              "start": 685,
              "end": 707,
              "loc": {
                "start": {
                  "line": 18,
                  "column": 9
                },
                "end": {
                  "line": 18,
                  "column": 31
                }
              },
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [],
              "body": {
                "type": "BlockStatement",
                "start": 688,
                "end": 707,
                "loc": {
                  "start": {
                    "line": 18,
                    "column": 12
                  },
                  "end": {
                    "line": 18,
                    "column": 31
                  }
                },
                "body": [
                  {
                    "type": "ReturnStatement",
                    "start": 690,
                    "end": 705,
                    "loc": {
                      "start": {
                        "line": 18,
                        "column": 14
                      },
                      "end": {
                        "line": 18,
                        "column": 29
                      }
                    },
                    "argument": {
                      "type": "MemberExpression",
                      "start": 697,
                      "end": 704,
                      "loc": {
                        "start": {
                          "line": 18,
                          "column": 21
                        },
                        "end": {
                          "line": 18,
                          "column": 28
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 697,
                        "end": 701,
                        "loc": {
                          "start": {
                            "line": 18,
                            "column": 21
                          },
                          "end": {
                            "line": 18,
                            "column": 25
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 702,
                        "end": 704,
                        "loc": {
                          "start": {
                            "line": 18,
                            "column": 26
                          },
                          "end": {
                            "line": 18,
                            "column": 28
                          }
                        },
                        "name": "_x"
                      },
                      "computed": false
                    }
                  }
                ]
              }
            }
          },
          {
            "type": "MethodDefinition",
            "start": 712,
            "end": 739,
            "loc": {
              "start": {
                "line": 19,
                "column": 4
              },
              "end": {
                "line": 19,
                "column": 31
              }
            },
            "computed": false,
            "key": {
              "type": "Identifier",
              "start": 716,
              "end": 717,
              "loc": {
                "start": {
                  "line": 19,
                  "column": 8
                },
                "end": {
                  "line": 19,
                  "column": 9
                }
              },
              "name": "y"
            },
            "static": false,
            "kind": "get",
            "value": {
              "type": "FunctionExpression",
              "start": 717,
              "end": 739,
              "loc": {
                "start": {
                  "line": 19,
                  "column": 9
                },
                "end": {
                  "line": 19,
                  "column": 31
                }
              },
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [],
              "body": {
                "type": "BlockStatement",
                "start": 720,
                "end": 739,
                "loc": {
                  "start": {
                    "line": 19,
                    "column": 12
                  },
                  "end": {
                    "line": 19,
                    "column": 31
                  }
                },
                "body": [
                  {
                    "type": "ReturnStatement",
                    "start": 722,
                    "end": 737,
                    "loc": {
                      "start": {
                        "line": 19,
                        "column": 14
                      },
                      "end": {
                        "line": 19,
                        "column": 29
                      }
                    },
                    "argument": {
                      "type": "MemberExpression",
                      "start": 729,
                      "end": 736,
                      "loc": {
                        "start": {
                          "line": 19,
                          "column": 21
                        },
                        "end": {
                          "line": 19,
                          "column": 28
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 729,
                        "end": 733,
                        "loc": {
                          "start": {
                            "line": 19,
                            "column": 21
                          },
                          "end": {
                            "line": 19,
                            "column": 25
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 734,
                        "end": 736,
                        "loc": {
                          "start": {
                            "line": 19,
                            "column": 26
                          },
                          "end": {
                            "line": 19,
                            "column": 28
                          }
                        },
                        "name": "_y"
                      },
                      "computed": false
                    }
                  }
                ]
              }
            }
          },
          {
            "type": "MethodDefinition",
            "start": 744,
            "end": 765,
            "loc": {
              "start": {
                "line": 20,
                "column": 4
              },
              "end": {
                "line": 20,
                "column": 25
              }
            },
            "computed": false,
            "key": {
              "type": "Identifier",
              "start": 748,
              "end": 749,
              "loc": {
                "start": {
                  "line": 20,
                  "column": 8
                },
                "end": {
                  "line": 20,
                  "column": 9
                }
              },
              "name": "z"
            },
            "static": false,
            "kind": "get",
            "value": {
              "type": "FunctionExpression",
              "start": 749,
              "end": 765,
              "loc": {
                "start": {
                  "line": 20,
                  "column": 9
                },
                "end": {
                  "line": 20,
                  "column": 25
                }
              },
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [],
              "body": {
                "type": "BlockStatement",
                "start": 752,
                "end": 765,
                "loc": {
                  "start": {
                    "line": 20,
                    "column": 12
                  },
                  "end": {
                    "line": 20,
                    "column": 25
                  }
                },
                "body": [
                  {
                    "type": "ReturnStatement",
                    "start": 754,
                    "end": 763,
                    "loc": {
                      "start": {
                        "line": 20,
                        "column": 14
                      },
                      "end": {
                        "line": 20,
                        "column": 23
                      }
                    },
                    "argument": {
                      "type": "Literal",
                      "start": 761,
                      "end": 762,
                      "loc": {
                        "start": {
                          "line": 20,
                          "column": 21
                        },
                        "end": {
                          "line": 20,
                          "column": 22
                        }
                      },
                      "value": 0,
                      "rawValue": 0,
                      "raw": "0"
                    }
                  }
                ]
              }
            }
          },
          {
            "type": "MethodDefinition",
            "start": 770,
            "end": 854,
            "loc": {
              "start": {
                "line": 21,
                "column": 4
              },
              "end": {
                "line": 25,
                "column": 5
              }
            },
            "computed": false,
            "key": {
              "type": "Identifier",
              "start": 770,
              "end": 773,
              "loc": {
                "start": {
                  "line": 21,
                  "column": 4
                },
                "end": {
                  "line": 21,
                  "column": 7
                }
              },
              "name": "set"
            },
            "static": false,
            "kind": "method",
            "value": {
              "type": "FunctionExpression",
              "start": 773,
              "end": 854,
              "loc": {
                "start": {
                  "line": 21,
                  "column": 7
                },
                "end": {
                  "line": 25,
                  "column": 5
                }
              },
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 774,
                  "end": 775,
                  "loc": {
                    "start": {
                      "line": 21,
                      "column": 8
                    },
                    "end": {
                      "line": 21,
                      "column": 9
                    }
                  },
                  "name": "x"
                },
                {
                  "type": "Identifier",
                  "start": 777,
                  "end": 778,
                  "loc": {
                    "start": {
                      "line": 21,
                      "column": 11
                    },
                    "end": {
                      "line": 21,
                      "column": 12
                    }
                  },
                  "name": "y"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 780,
                "end": 854,
                "loc": {
                  "start": {
                    "line": 21,
                    "column": 14
                  },
                  "end": {
                    "line": 25,
                    "column": 5
                  }
                },
                "body": [
                  {
                    "type": "ExpressionStatement",
                    "start": 790,
                    "end": 802,
                    "loc": {
                      "start": {
                        "line": 22,
                        "column": 8
                      },
                      "end": {
                        "line": 22,
                        "column": 20
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 790,
                      "end": 801,
                      "loc": {
                        "start": {
                          "line": 22,
                          "column": 8
                        },
                        "end": {
                          "line": 22,
                          "column": 19
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 790,
                        "end": 797,
                        "loc": {
                          "start": {
                            "line": 22,
                            "column": 8
                          },
                          "end": {
                            "line": 22,
                            "column": 15
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 790,
                          "end": 794,
                          "loc": {
                            "start": {
                              "line": 22,
                              "column": 8
                            },
                            "end": {
                              "line": 22,
                              "column": 12
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 795,
                          "end": 797,
                          "loc": {
                            "start": {
                              "line": 22,
                              "column": 13
                            },
                            "end": {
                              "line": 22,
                              "column": 15
                            }
                          },
                          "name": "_x"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "Identifier",
                        "start": 800,
                        "end": 801,
                        "loc": {
                          "start": {
                            "line": 22,
                            "column": 18
                          },
                          "end": {
                            "line": 22,
                            "column": 19
                          }
                        },
                        "name": "x"
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 811,
                    "end": 823,
                    "loc": {
                      "start": {
                        "line": 23,
                        "column": 8
                      },
                      "end": {
                        "line": 23,
                        "column": 20
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 811,
                      "end": 822,
                      "loc": {
                        "start": {
                          "line": 23,
                          "column": 8
                        },
                        "end": {
                          "line": 23,
                          "column": 19
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 811,
                        "end": 818,
                        "loc": {
                          "start": {
                            "line": 23,
                            "column": 8
                          },
                          "end": {
                            "line": 23,
                            "column": 15
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 811,
                          "end": 815,
                          "loc": {
                            "start": {
                              "line": 23,
                              "column": 8
                            },
                            "end": {
                              "line": 23,
                              "column": 12
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 816,
                          "end": 818,
                          "loc": {
                            "start": {
                              "line": 23,
                              "column": 13
                            },
                            "end": {
                              "line": 23,
                              "column": 15
                            }
                          },
                          "name": "_y"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "Identifier",
                        "start": 821,
                        "end": 822,
                        "loc": {
                          "start": {
                            "line": 23,
                            "column": 18
                          },
                          "end": {
                            "line": 23,
                            "column": 19
                          }
                        },
                        "name": "y"
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 832,
                    "end": 848,
                    "loc": {
                      "start": {
                        "line": 24,
                        "column": 8
                      },
                      "end": {
                        "line": 24,
                        "column": 24
                      }
                    },
                    "expression": {
                      "type": "CallExpression",
                      "start": 832,
                      "end": 847,
                      "loc": {
                        "start": {
                          "line": 24,
                          "column": 8
                        },
                        "end": {
                          "line": 24,
                          "column": 23
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 832,
                        "end": 845,
                        "loc": {
                          "start": {
                            "line": 24,
                            "column": 8
                          },
                          "end": {
                            "line": 24,
                            "column": 21
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 832,
                          "end": 836,
                          "loc": {
                            "start": {
                              "line": 24,
                              "column": 8
                            },
                            "end": {
                              "line": 24,
                              "column": 12
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 837,
                          "end": 845,
                          "loc": {
                            "start": {
                              "line": 24,
                              "column": 13
                            },
                            "end": {
                              "line": 24,
                              "column": 21
                            }
                          },
                          "name": "notifier"
                        },
                        "computed": false
                      },
                      "arguments": []
                    }
                  }
                ]
              }
            }
          },
          {
            "type": "MethodDefinition",
            "start": 859,
            "end": 908,
            "loc": {
              "start": {
                "line": 26,
                "column": 4
              },
              "end": {
                "line": 28,
                "column": 5
              }
            },
            "computed": false,
            "key": {
              "type": "Identifier",
              "start": 859,
              "end": 863,
              "loc": {
                "start": {
                  "line": 26,
                  "column": 4
                },
                "end": {
                  "line": 26,
                  "column": 8
                }
              },
              "name": "copy"
            },
            "static": false,
            "kind": "method",
            "value": {
              "type": "FunctionExpression",
              "start": 863,
              "end": 908,
              "loc": {
                "start": {
                  "line": 26,
                  "column": 8
                },
                "end": {
                  "line": 28,
                  "column": 5
                }
              },
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 864,
                  "end": 867,
                  "loc": {
                    "start": {
                      "line": 26,
                      "column": 9
                    },
                    "end": {
                      "line": 26,
                      "column": 12
                    }
                  },
                  "name": "pos"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 869,
                "end": 908,
                "loc": {
                  "start": {
                    "line": 26,
                    "column": 14
                  },
                  "end": {
                    "line": 28,
                    "column": 5
                  }
                },
                "body": [
                  {
                    "type": "ExpressionStatement",
                    "start": 879,
                    "end": 902,
                    "loc": {
                      "start": {
                        "line": 27,
                        "column": 8
                      },
                      "end": {
                        "line": 27,
                        "column": 31
                      }
                    },
                    "expression": {
                      "type": "CallExpression",
                      "start": 879,
                      "end": 901,
                      "loc": {
                        "start": {
                          "line": 27,
                          "column": 8
                        },
                        "end": {
                          "line": 27,
                          "column": 30
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 879,
                        "end": 887,
                        "loc": {
                          "start": {
                            "line": 27,
                            "column": 8
                          },
                          "end": {
                            "line": 27,
                            "column": 16
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 879,
                          "end": 883,
                          "loc": {
                            "start": {
                              "line": 27,
                              "column": 8
                            },
                            "end": {
                              "line": 27,
                              "column": 12
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 884,
                          "end": 887,
                          "loc": {
                            "start": {
                              "line": 27,
                              "column": 13
                            },
                            "end": {
                              "line": 27,
                              "column": 16
                            }
                          },
                          "name": "set"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "MemberExpression",
                          "start": 888,
                          "end": 893,
                          "loc": {
                            "start": {
                              "line": 27,
                              "column": 17
                            },
                            "end": {
                              "line": 27,
                              "column": 22
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 888,
                            "end": 891,
                            "loc": {
                              "start": {
                                "line": 27,
                                "column": 17
                              },
                              "end": {
                                "line": 27,
                                "column": 20
                              }
                            },
                            "name": "pos"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 892,
                            "end": 893,
                            "loc": {
                              "start": {
                                "line": 27,
                                "column": 21
                              },
                              "end": {
                                "line": 27,
                                "column": 22
                              }
                            },
                            "name": "x"
                          },
                          "computed": false
                        },
                        {
                          "type": "MemberExpression",
                          "start": 895,
                          "end": 900,
                          "loc": {
                            "start": {
                              "line": 27,
                              "column": 24
                            },
                            "end": {
                              "line": 27,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 895,
                            "end": 898,
                            "loc": {
                              "start": {
                                "line": 27,
                                "column": 24
                              },
                              "end": {
                                "line": 27,
                                "column": 27
                              }
                            },
                            "name": "pos"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 899,
                            "end": 900,
                            "loc": {
                              "start": {
                                "line": 27,
                                "column": 28
                              },
                              "end": {
                                "line": 27,
                                "column": 29
                              }
                            },
                            "name": "y"
                          },
                          "computed": false
                        }
                      ]
                    }
                  }
                ]
              }
            }
          },
          {
            "type": "MethodDefinition",
            "start": 913,
            "end": 986,
            "loc": {
              "start": {
                "line": 29,
                "column": 4
              },
              "end": {
                "line": 31,
                "column": 5
              }
            },
            "computed": false,
            "key": {
              "type": "Identifier",
              "start": 913,
              "end": 918,
              "loc": {
                "start": {
                  "line": 29,
                  "column": 4
                },
                "end": {
                  "line": 29,
                  "column": 9
                }
              },
              "name": "clone"
            },
            "static": false,
            "kind": "method",
            "value": {
              "type": "FunctionExpression",
              "start": 918,
              "end": 986,
              "loc": {
                "start": {
                  "line": 29,
                  "column": 9
                },
                "end": {
                  "line": 31,
                  "column": 5
                }
              },
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [],
              "body": {
                "type": "BlockStatement",
                "start": 921,
                "end": 986,
                "loc": {
                  "start": {
                    "line": 29,
                    "column": 12
                  },
                  "end": {
                    "line": 31,
                    "column": 5
                  }
                },
                "body": [
                  {
                    "type": "ReturnStatement",
                    "start": 931,
                    "end": 980,
                    "loc": {
                      "start": {
                        "line": 30,
                        "column": 8
                      },
                      "end": {
                        "line": 30,
                        "column": 57
                      }
                    },
                    "argument": {
                      "type": "NewExpression",
                      "start": 938,
                      "end": 979,
                      "loc": {
                        "start": {
                          "line": 30,
                          "column": 15
                        },
                        "end": {
                          "line": 30,
                          "column": 56
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 942,
                        "end": 955,
                        "loc": {
                          "start": {
                            "line": 30,
                            "column": 19
                          },
                          "end": {
                            "line": 30,
                            "column": 32
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 942,
                          "end": 947,
                          "loc": {
                            "start": {
                              "line": 30,
                              "column": 19
                            },
                            "end": {
                              "line": 30,
                              "column": 24
                            }
                          },
                          "name": "THREE"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 948,
                          "end": 955,
                          "loc": {
                            "start": {
                              "line": 30,
                              "column": 25
                            },
                            "end": {
                              "line": 30,
                              "column": 32
                            }
                          },
                          "name": "Vector3"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "MemberExpression",
                          "start": 956,
                          "end": 962,
                          "loc": {
                            "start": {
                              "line": 30,
                              "column": 33
                            },
                            "end": {
                              "line": 30,
                              "column": 39
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 956,
                            "end": 960,
                            "loc": {
                              "start": {
                                "line": 30,
                                "column": 33
                              },
                              "end": {
                                "line": 30,
                                "column": 37
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 961,
                            "end": 962,
                            "loc": {
                              "start": {
                                "line": 30,
                                "column": 38
                              },
                              "end": {
                                "line": 30,
                                "column": 39
                              }
                            },
                            "name": "x"
                          },
                          "computed": false
                        },
                        {
                          "type": "MemberExpression",
                          "start": 964,
                          "end": 970,
                          "loc": {
                            "start": {
                              "line": 30,
                              "column": 41
                            },
                            "end": {
                              "line": 30,
                              "column": 47
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 964,
                            "end": 968,
                            "loc": {
                              "start": {
                                "line": 30,
                                "column": 41
                              },
                              "end": {
                                "line": 30,
                                "column": 45
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 969,
                            "end": 970,
                            "loc": {
                              "start": {
                                "line": 30,
                                "column": 46
                              },
                              "end": {
                                "line": 30,
                                "column": 47
                              }
                            },
                            "name": "y"
                          },
                          "computed": false
                        },
                        {
                          "type": "MemberExpression",
                          "start": 972,
                          "end": 978,
                          "loc": {
                            "start": {
                              "line": 30,
                              "column": 49
                            },
                            "end": {
                              "line": 30,
                              "column": 55
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 972,
                            "end": 976,
                            "loc": {
                              "start": {
                                "line": 30,
                                "column": 49
                              },
                              "end": {
                                "line": 30,
                                "column": 53
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 977,
                            "end": 978,
                            "loc": {
                              "start": {
                                "line": 30,
                                "column": 54
                              },
                              "end": {
                                "line": 30,
                                "column": 55
                              }
                            },
                            "name": "z"
                          },
                          "computed": false
                        }
                      ]
                    }
                  }
                ]
              }
            }
          }
        ]
      }
    },
    {
      "type": "ExportDefaultDeclaration",
      "start": 990,
      "end": 24226,
      "loc": {
        "start": {
          "line": 34,
          "column": 0
        },
        "end": {
          "line": 623,
          "column": 1
        }
      },
      "declaration": {
        "type": "ClassDeclaration",
        "start": 1005,
        "end": 24226,
        "loc": {
          "start": {
            "line": 34,
            "column": 15
          },
          "end": {
            "line": 623,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 1011,
          "end": 1019,
          "loc": {
            "start": {
              "line": 34,
              "column": 21
            },
            "end": {
              "line": 34,
              "column": 29
            }
          },
          "name": "Sketcher"
        },
        "superClass": {
          "type": "Identifier",
          "start": 1028,
          "end": 1035,
          "loc": {
            "start": {
              "line": 34,
              "column": 38
            },
            "end": {
              "line": 34,
              "column": 45
            }
          },
          "name": "Object3"
        },
        "body": {
          "type": "ClassBody",
          "start": 1036,
          "end": 24226,
          "loc": {
            "start": {
              "line": 34,
              "column": 46
            },
            "end": {
              "line": 623,
              "column": 1
            }
          },
          "body": [
            {
              "type": "MethodDefinition",
              "start": 1042,
              "end": 6014,
              "loc": {
                "start": {
                  "line": 35,
                  "column": 4
                },
                "end": {
                  "line": 142,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 1042,
                "end": 1053,
                "loc": {
                  "start": {
                    "line": 35,
                    "column": 4
                  },
                  "end": {
                    "line": 35,
                    "column": 15
                  }
                },
                "name": "constructor"
              },
              "static": false,
              "kind": "constructor",
              "value": {
                "type": "FunctionExpression",
                "start": 1053,
                "end": 6014,
                "loc": {
                  "start": {
                    "line": 35,
                    "column": 15
                  },
                  "end": {
                    "line": 142,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 1054,
                    "end": 1064,
                    "loc": {
                      "start": {
                        "line": 35,
                        "column": 16
                      },
                      "end": {
                        "line": 35,
                        "column": 26
                      }
                    },
                    "name": "parentView"
                  },
                  {
                    "type": "Identifier",
                    "start": 1066,
                    "end": 1072,
                    "loc": {
                      "start": {
                        "line": 35,
                        "column": 28
                      },
                      "end": {
                        "line": 35,
                        "column": 34
                      }
                    },
                    "name": "server"
                  },
                  {
                    "type": "Identifier",
                    "start": 1074,
                    "end": 1084,
                    "loc": {
                      "start": {
                        "line": 35,
                        "column": 36
                      },
                      "end": {
                        "line": 35,
                        "column": 46
                      }
                    },
                    "name": "rootObject"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 1086,
                  "end": 6014,
                  "loc": {
                    "start": {
                      "line": 35,
                      "column": 48
                    },
                    "end": {
                      "line": 142,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 1096,
                      "end": 1104,
                      "loc": {
                        "start": {
                          "line": 36,
                          "column": 8
                        },
                        "end": {
                          "line": 36,
                          "column": 16
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 1096,
                        "end": 1103,
                        "loc": {
                          "start": {
                            "line": 36,
                            "column": 8
                          },
                          "end": {
                            "line": 36,
                            "column": 15
                          }
                        },
                        "callee": {
                          "type": "Super",
                          "start": 1096,
                          "end": 1101,
                          "loc": {
                            "start": {
                              "line": 36,
                              "column": 8
                            },
                            "end": {
                              "line": 36,
                              "column": 13
                            }
                          }
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1113,
                      "end": 1139,
                      "loc": {
                        "start": {
                          "line": 37,
                          "column": 8
                        },
                        "end": {
                          "line": 37,
                          "column": 34
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 1113,
                        "end": 1138,
                        "loc": {
                          "start": {
                            "line": 37,
                            "column": 8
                          },
                          "end": {
                            "line": 37,
                            "column": 33
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 1113,
                          "end": 1131,
                          "loc": {
                            "start": {
                              "line": 37,
                              "column": 8
                            },
                            "end": {
                              "line": 37,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 1113,
                            "end": 1117,
                            "loc": {
                              "start": {
                                "line": 37,
                                "column": 8
                              },
                              "end": {
                                "line": 37,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1118,
                            "end": 1131,
                            "loc": {
                              "start": {
                                "line": 37,
                                "column": 13
                              },
                              "end": {
                                "line": 37,
                                "column": 26
                              }
                            },
                            "name": "currentSketch"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 1134,
                          "end": 1138,
                          "loc": {
                            "start": {
                              "line": 37,
                              "column": 29
                            },
                            "end": {
                              "line": 37,
                              "column": 33
                            }
                          },
                          "value": null,
                          "rawValue": null,
                          "raw": "null"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1149,
                      "end": 1176,
                      "loc": {
                        "start": {
                          "line": 39,
                          "column": 8
                        },
                        "end": {
                          "line": 39,
                          "column": 35
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 1149,
                        "end": 1175,
                        "loc": {
                          "start": {
                            "line": 39,
                            "column": 8
                          },
                          "end": {
                            "line": 39,
                            "column": 34
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 1149,
                          "end": 1169,
                          "loc": {
                            "start": {
                              "line": 39,
                              "column": 8
                            },
                            "end": {
                              "line": 39,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 1149,
                            "end": 1165,
                            "loc": {
                              "start": {
                                "line": 39,
                                "column": 8
                              },
                              "end": {
                                "line": 39,
                                "column": 24
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 1149,
                              "end": 1159,
                              "loc": {
                                "start": {
                                  "line": 39,
                                  "column": 8
                                },
                                "end": {
                                  "line": 39,
                                  "column": 18
                                }
                              },
                              "name": "parentView"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1160,
                              "end": 1165,
                              "loc": {
                                "start": {
                                  "line": 39,
                                  "column": 19
                                },
                                "end": {
                                  "line": 39,
                                  "column": 24
                                }
                              },
                              "name": "scene"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1166,
                            "end": 1169,
                            "loc": {
                              "start": {
                                "line": 39,
                                "column": 25
                              },
                              "end": {
                                "line": 39,
                                "column": 28
                              }
                            },
                            "name": "add"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 1170,
                            "end": 1174,
                            "loc": {
                              "start": {
                                "line": 39,
                                "column": 29
                              },
                              "end": {
                                "line": 39,
                                "column": 33
                              }
                            }
                          }
                        ]
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "reqiured to handle interaction events",
                          "start": 1177,
                          "end": 1216,
                          "loc": {
                            "start": {
                              "line": 39,
                              "column": 36
                            },
                            "end": {
                              "line": 39,
                              "column": 75
                            }
                          },
                          "range": [
                            1177,
                            1216
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1226,
                      "end": 1257,
                      "loc": {
                        "start": {
                          "line": 41,
                          "column": 8
                        },
                        "end": {
                          "line": 41,
                          "column": 39
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 1226,
                        "end": 1256,
                        "loc": {
                          "start": {
                            "line": 41,
                            "column": 8
                          },
                          "end": {
                            "line": 41,
                            "column": 38
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 1226,
                          "end": 1243,
                          "loc": {
                            "start": {
                              "line": 41,
                              "column": 8
                            },
                            "end": {
                              "line": 41,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 1226,
                            "end": 1230,
                            "loc": {
                              "start": {
                                "line": 41,
                                "column": 8
                              },
                              "end": {
                                "line": 41,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1231,
                            "end": 1243,
                            "loc": {
                              "start": {
                                "line": 41,
                                "column": 13
                              },
                              "end": {
                                "line": 41,
                                "column": 25
                              }
                            },
                            "name": "__parentView"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 1246,
                          "end": 1256,
                          "loc": {
                            "start": {
                              "line": 41,
                              "column": 28
                            },
                            "end": {
                              "line": 41,
                              "column": 38
                            }
                          },
                          "name": "parentView"
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "reqiured to handle interaction events",
                          "start": 1177,
                          "end": 1216,
                          "loc": {
                            "start": {
                              "line": 39,
                              "column": 36
                            },
                            "end": {
                              "line": 39,
                              "column": 75
                            }
                          },
                          "range": [
                            1177,
                            1216
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1266,
                      "end": 1287,
                      "loc": {
                        "start": {
                          "line": 42,
                          "column": 8
                        },
                        "end": {
                          "line": 42,
                          "column": 29
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 1266,
                        "end": 1286,
                        "loc": {
                          "start": {
                            "line": 42,
                            "column": 8
                          },
                          "end": {
                            "line": 42,
                            "column": 28
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 1266,
                          "end": 1277,
                          "loc": {
                            "start": {
                              "line": 42,
                              "column": 8
                            },
                            "end": {
                              "line": 42,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 1266,
                            "end": 1270,
                            "loc": {
                              "start": {
                                "line": 42,
                                "column": 8
                              },
                              "end": {
                                "line": 42,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1271,
                            "end": 1277,
                            "loc": {
                              "start": {
                                "line": 42,
                                "column": 13
                              },
                              "end": {
                                "line": 42,
                                "column": 19
                              }
                            },
                            "name": "server"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 1280,
                          "end": 1286,
                          "loc": {
                            "start": {
                              "line": 42,
                              "column": 22
                            },
                            "end": {
                              "line": 42,
                              "column": 28
                            }
                          },
                          "name": "server"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1296,
                      "end": 1325,
                      "loc": {
                        "start": {
                          "line": 43,
                          "column": 8
                        },
                        "end": {
                          "line": 43,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 1296,
                        "end": 1324,
                        "loc": {
                          "start": {
                            "line": 43,
                            "column": 8
                          },
                          "end": {
                            "line": 43,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 1296,
                          "end": 1311,
                          "loc": {
                            "start": {
                              "line": 43,
                              "column": 8
                            },
                            "end": {
                              "line": 43,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 1296,
                            "end": 1300,
                            "loc": {
                              "start": {
                                "line": 43,
                                "column": 8
                              },
                              "end": {
                                "line": 43,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1301,
                            "end": 1311,
                            "loc": {
                              "start": {
                                "line": 43,
                                "column": 13
                              },
                              "end": {
                                "line": 43,
                                "column": 23
                              }
                            },
                            "name": "rootObject"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 1314,
                          "end": 1324,
                          "loc": {
                            "start": {
                              "line": 43,
                              "column": 26
                            },
                            "end": {
                              "line": 43,
                              "column": 36
                            }
                          },
                          "name": "rootObject"
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "a method currently intended to handle any mouse events on the selected sketch",
                          "start": 1335,
                          "end": 1414,
                          "loc": {
                            "start": {
                              "line": 45,
                              "column": 8
                            },
                            "end": {
                              "line": 45,
                              "column": 87
                            }
                          },
                          "range": [
                            1335,
                            1414
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1423,
                      "end": 1459,
                      "loc": {
                        "start": {
                          "line": 46,
                          "column": 8
                        },
                        "end": {
                          "line": 46,
                          "column": 44
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 1423,
                        "end": 1458,
                        "loc": {
                          "start": {
                            "line": 46,
                            "column": 8
                          },
                          "end": {
                            "line": 46,
                            "column": 43
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 1423,
                          "end": 1451,
                          "loc": {
                            "start": {
                              "line": 46,
                              "column": 8
                            },
                            "end": {
                              "line": 46,
                              "column": 36
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 1423,
                            "end": 1427,
                            "loc": {
                              "start": {
                                "line": 46,
                                "column": 8
                              },
                              "end": {
                                "line": 46,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1428,
                            "end": 1451,
                            "loc": {
                              "start": {
                                "line": 46,
                                "column": 13
                              },
                              "end": {
                                "line": 46,
                                "column": 36
                              }
                            },
                            "name": "__sketchControlsHandler"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "Literal",
                          "start": 1454,
                          "end": 1458,
                          "loc": {
                            "start": {
                              "line": 46,
                              "column": 39
                            },
                            "end": {
                              "line": 46,
                              "column": 43
                            }
                          },
                          "value": null,
                          "rawValue": null,
                          "raw": "null"
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "a method currently intended to handle any mouse events on the selected sketch",
                          "start": 1335,
                          "end": 1414,
                          "loc": {
                            "start": {
                              "line": 45,
                              "column": 8
                            },
                            "end": {
                              "line": 45,
                              "column": 87
                            }
                          },
                          "range": [
                            1335,
                            1414
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "used for drawing text labels of dimensions",
                          "start": 1469,
                          "end": 1513,
                          "loc": {
                            "start": {
                              "line": 48,
                              "column": 8
                            },
                            "end": {
                              "line": 48,
                              "column": 52
                            }
                          },
                          "range": [
                            1469,
                            1513
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 1522,
                      "end": 1562,
                      "loc": {
                        "start": {
                          "line": 49,
                          "column": 8
                        },
                        "end": {
                          "line": 49,
                          "column": 48
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 1526,
                          "end": 1561,
                          "loc": {
                            "start": {
                              "line": 49,
                              "column": 12
                            },
                            "end": {
                              "line": 49,
                              "column": 47
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 1526,
                            "end": 1536,
                            "loc": {
                              "start": {
                                "line": 49,
                                "column": 12
                              },
                              "end": {
                                "line": 49,
                                "column": 22
                              }
                            },
                            "name": "fontLoader",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 1539,
                            "end": 1561,
                            "loc": {
                              "start": {
                                "line": 49,
                                "column": 25
                              },
                              "end": {
                                "line": 49,
                                "column": 47
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 1543,
                              "end": 1559,
                              "loc": {
                                "start": {
                                  "line": 49,
                                  "column": 29
                                },
                                "end": {
                                  "line": 49,
                                  "column": 45
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 1543,
                                "end": 1548,
                                "loc": {
                                  "start": {
                                    "line": 49,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 49,
                                    "column": 34
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1549,
                                "end": 1559,
                                "loc": {
                                  "start": {
                                    "line": 49,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 49,
                                    "column": 45
                                  }
                                },
                                "name": "FontLoader"
                              },
                              "computed": false
                            },
                            "arguments": []
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "var",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "used for drawing text labels of dimensions",
                          "start": 1469,
                          "end": 1513,
                          "loc": {
                            "start": {
                              "line": 48,
                              "column": 8
                            },
                            "end": {
                              "line": 48,
                              "column": 52
                            }
                          },
                          "range": [
                            1469,
                            1513
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1571,
                      "end": 1614,
                      "loc": {
                        "start": {
                          "line": 50,
                          "column": 8
                        },
                        "end": {
                          "line": 50,
                          "column": 51
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 1571,
                        "end": 1613,
                        "loc": {
                          "start": {
                            "line": 50,
                            "column": 8
                          },
                          "end": {
                            "line": 50,
                            "column": 50
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 1571,
                          "end": 1580,
                          "loc": {
                            "start": {
                              "line": 50,
                              "column": 8
                            },
                            "end": {
                              "line": 50,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 1571,
                            "end": 1575,
                            "loc": {
                              "start": {
                                "line": 50,
                                "column": 8
                              },
                              "end": {
                                "line": 50,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1576,
                            "end": 1580,
                            "loc": {
                              "start": {
                                "line": 50,
                                "column": 13
                              },
                              "end": {
                                "line": 50,
                                "column": 17
                              }
                            },
                            "name": "font"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 1583,
                          "end": 1613,
                          "loc": {
                            "start": {
                              "line": 50,
                              "column": 20
                            },
                            "end": {
                              "line": 50,
                              "column": 50
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 1583,
                            "end": 1599,
                            "loc": {
                              "start": {
                                "line": 50,
                                "column": 20
                              },
                              "end": {
                                "line": 50,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 1583,
                              "end": 1593,
                              "loc": {
                                "start": {
                                  "line": 50,
                                  "column": 20
                                },
                                "end": {
                                  "line": 50,
                                  "column": 30
                                }
                              },
                              "name": "fontLoader"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1594,
                              "end": 1599,
                              "loc": {
                                "start": {
                                  "line": 50,
                                  "column": 31
                                },
                                "end": {
                                  "line": 50,
                                  "column": 36
                                }
                              },
                              "name": "parse"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 1600,
                              "end": 1612,
                              "loc": {
                                "start": {
                                  "line": 50,
                                  "column": 37
                                },
                                "end": {
                                  "line": 50,
                                  "column": 49
                                }
                              },
                              "name": "SketcherFont"
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1623,
                      "end": 1666,
                      "loc": {
                        "start": {
                          "line": 51,
                          "column": 8
                        },
                        "end": {
                          "line": 51,
                          "column": 51
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 1623,
                        "end": 1665,
                        "loc": {
                          "start": {
                            "line": 51,
                            "column": 8
                          },
                          "end": {
                            "line": 51,
                            "column": 50
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 1623,
                          "end": 1653,
                          "loc": {
                            "start": {
                              "line": 51,
                              "column": 8
                            },
                            "end": {
                              "line": 51,
                              "column": 38
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 1623,
                            "end": 1648,
                            "loc": {
                              "start": {
                                "line": 51,
                                "column": 8
                              },
                              "end": {
                                "line": 51,
                                "column": 33
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 1623,
                              "end": 1633,
                              "loc": {
                                "start": {
                                  "line": 51,
                                  "column": 8
                                },
                                "end": {
                                  "line": 51,
                                  "column": 18
                                }
                              },
                              "name": "Constraint"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1634,
                              "end": 1648,
                              "loc": {
                                "start": {
                                  "line": 51,
                                  "column": 19
                                },
                                "end": {
                                  "line": 51,
                                  "column": 33
                                }
                              },
                              "name": "TextParameters"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1649,
                            "end": 1653,
                            "loc": {
                              "start": {
                                "line": 51,
                                "column": 34
                              },
                              "end": {
                                "line": 51,
                                "column": 38
                              }
                            },
                            "name": "font"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 1656,
                          "end": 1665,
                          "loc": {
                            "start": {
                              "line": 51,
                              "column": 41
                            },
                            "end": {
                              "line": 51,
                              "column": 50
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 1656,
                            "end": 1660,
                            "loc": {
                              "start": {
                                "line": 51,
                                "column": 41
                              },
                              "end": {
                                "line": 51,
                                "column": 45
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1661,
                            "end": 1665,
                            "loc": {
                              "start": {
                                "line": 51,
                                "column": 46
                              },
                              "end": {
                                "line": 51,
                                "column": 50
                              }
                            },
                            "name": "font"
                          },
                          "computed": false
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1676,
                      "end": 2991,
                      "loc": {
                        "start": {
                          "line": 53,
                          "column": 8
                        },
                        "end": {
                          "line": 77,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 1676,
                        "end": 2990,
                        "loc": {
                          "start": {
                            "line": 53,
                            "column": 8
                          },
                          "end": {
                            "line": 77,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 1676,
                          "end": 1703,
                          "loc": {
                            "start": {
                              "line": 53,
                              "column": 8
                            },
                            "end": {
                              "line": 53,
                              "column": 35
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 1676,
                            "end": 1700,
                            "loc": {
                              "start": {
                                "line": 53,
                                "column": 8
                              },
                              "end": {
                                "line": 53,
                                "column": 32
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 1676,
                              "end": 1698,
                              "loc": {
                                "start": {
                                  "line": 53,
                                  "column": 8
                                },
                                "end": {
                                  "line": 53,
                                  "column": 30
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 1676,
                                "end": 1680,
                                "loc": {
                                  "start": {
                                    "line": 53,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 53,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1681,
                                "end": 1698,
                                "loc": {
                                  "start": {
                                    "line": 53,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 53,
                                    "column": 30
                                  }
                                },
                                "name": "createInteraction"
                              },
                              "computed": false
                            },
                            "arguments": []
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1701,
                            "end": 1703,
                            "loc": {
                              "start": {
                                "line": 53,
                                "column": 33
                              },
                              "end": {
                                "line": 53,
                                "column": 35
                              }
                            },
                            "name": "on"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 1704,
                            "end": 1737,
                            "loc": {
                              "start": {
                                "line": 53,
                                "column": 36
                              },
                              "end": {
                                "line": 53,
                                "column": 69
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 1704,
                              "end": 1728,
                              "loc": {
                                "start": {
                                  "line": 53,
                                  "column": 36
                                },
                                "end": {
                                  "line": 53,
                                  "column": 60
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 1704,
                                "end": 1718,
                                "loc": {
                                  "start": {
                                    "line": 53,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 53,
                                    "column": 50
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1704,
                                  "end": 1711,
                                  "loc": {
                                    "start": {
                                      "line": 53,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 53,
                                      "column": 43
                                    }
                                  },
                                  "name": "Object3"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1712,
                                  "end": 1718,
                                  "loc": {
                                    "start": {
                                      "line": 53,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 53,
                                      "column": 50
                                    }
                                  },
                                  "name": "Events"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1719,
                                "end": 1728,
                                "loc": {
                                  "start": {
                                    "line": 53,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 53,
                                    "column": 60
                                  }
                                },
                                "name": "Lifecycle"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1729,
                              "end": 1737,
                              "loc": {
                                "start": {
                                  "line": 53,
                                  "column": 61
                                },
                                "end": {
                                  "line": 53,
                                  "column": 69
                                }
                              },
                              "name": "Rendered"
                            },
                            "computed": false
                          },
                          {
                            "type": "FunctionExpression",
                            "start": 1739,
                            "end": 2989,
                            "loc": {
                              "start": {
                                "line": 53,
                                "column": 71
                              },
                              "end": {
                                "line": 77,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [],
                            "body": {
                              "type": "BlockStatement",
                              "start": 1750,
                              "end": 2989,
                              "loc": {
                                "start": {
                                  "line": 53,
                                  "column": 82
                                },
                                "end": {
                                  "line": 77,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 1764,
                                  "end": 1812,
                                  "loc": {
                                    "start": {
                                      "line": 54,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 55,
                                      "column": 23
                                    }
                                  },
                                  "test": {
                                    "type": "UnaryExpression",
                                    "start": 1768,
                                    "end": 1787,
                                    "loc": {
                                      "start": {
                                        "line": 54,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 54,
                                        "column": 35
                                      }
                                    },
                                    "operator": "!",
                                    "prefix": true,
                                    "argument": {
                                      "type": "MemberExpression",
                                      "start": 1769,
                                      "end": 1787,
                                      "loc": {
                                        "start": {
                                          "line": 54,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 54,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 1769,
                                        "end": 1773,
                                        "loc": {
                                          "start": {
                                            "line": 54,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 54,
                                            "column": 21
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1774,
                                        "end": 1787,
                                        "loc": {
                                          "start": {
                                            "line": 54,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 54,
                                            "column": 35
                                          }
                                        },
                                        "name": "currentSketch"
                                      },
                                      "computed": false
                                    }
                                  },
                                  "consequent": {
                                    "type": "ReturnStatement",
                                    "start": 1805,
                                    "end": 1812,
                                    "loc": {
                                      "start": {
                                        "line": 55,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 55,
                                        "column": 23
                                      }
                                    },
                                    "argument": null
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 1826,
                                  "end": 1887,
                                  "loc": {
                                    "start": {
                                      "line": 57,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 57,
                                      "column": 73
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 1826,
                                    "end": 1886,
                                    "loc": {
                                      "start": {
                                        "line": 57,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 57,
                                        "column": 72
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 1826,
                                      "end": 1855,
                                      "loc": {
                                        "start": {
                                          "line": 57,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 57,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 1826,
                                        "end": 1844,
                                        "loc": {
                                          "start": {
                                            "line": 57,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 57,
                                            "column": 30
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 1826,
                                          "end": 1830,
                                          "loc": {
                                            "start": {
                                              "line": 57,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 57,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 1831,
                                          "end": 1844,
                                          "loc": {
                                            "start": {
                                              "line": 57,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 57,
                                              "column": 30
                                            }
                                          },
                                          "name": "currentSketch"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1845,
                                        "end": 1855,
                                        "loc": {
                                          "start": {
                                            "line": 57,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 57,
                                            "column": 41
                                          }
                                        },
                                        "name": "updateGrid"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 1856,
                                        "end": 1885,
                                        "loc": {
                                          "start": {
                                            "line": 57,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 57,
                                            "column": 71
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 1856,
                                          "end": 1880,
                                          "loc": {
                                            "start": {
                                              "line": 57,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 57,
                                              "column": 66
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 1856,
                                            "end": 1873,
                                            "loc": {
                                              "start": {
                                                "line": 57,
                                                "column": 42
                                              },
                                              "end": {
                                                "line": 57,
                                                "column": 59
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 1856,
                                              "end": 1860,
                                              "loc": {
                                                "start": {
                                                  "line": 57,
                                                  "column": 42
                                                },
                                                "end": {
                                                  "line": 57,
                                                  "column": 46
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1861,
                                              "end": 1873,
                                              "loc": {
                                                "start": {
                                                  "line": 57,
                                                  "column": 47
                                                },
                                                "end": {
                                                  "line": 57,
                                                  "column": 59
                                                }
                                              },
                                              "name": "__parentView"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 1874,
                                            "end": 1880,
                                            "loc": {
                                              "start": {
                                                "line": 57,
                                                "column": 60
                                              },
                                              "end": {
                                                "line": 57,
                                                "column": 66
                                              }
                                            },
                                            "name": "camera"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 1881,
                                          "end": 1885,
                                          "loc": {
                                            "start": {
                                              "line": 57,
                                              "column": 67
                                            },
                                            "end": {
                                              "line": 57,
                                              "column": 71
                                            }
                                          },
                                          "name": "size"
                                        },
                                        "computed": false
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 1901,
                                  "end": 1971,
                                  "loc": {
                                    "start": {
                                      "line": 59,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 60,
                                      "column": 23
                                    }
                                  },
                                  "test": {
                                    "type": "UnaryExpression",
                                    "start": 1905,
                                    "end": 1946,
                                    "loc": {
                                      "start": {
                                        "line": 59,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 59,
                                        "column": 57
                                      }
                                    },
                                    "operator": "!",
                                    "prefix": true,
                                    "argument": {
                                      "type": "MemberExpression",
                                      "start": 1906,
                                      "end": 1946,
                                      "loc": {
                                        "start": {
                                          "line": 59,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 59,
                                          "column": 57
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 1906,
                                        "end": 1936,
                                        "loc": {
                                          "start": {
                                            "line": 59,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 59,
                                            "column": 47
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 1906,
                                          "end": 1929,
                                          "loc": {
                                            "start": {
                                              "line": 59,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 59,
                                              "column": 40
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 1906,
                                            "end": 1923,
                                            "loc": {
                                              "start": {
                                                "line": 59,
                                                "column": 17
                                              },
                                              "end": {
                                                "line": 59,
                                                "column": 34
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 1906,
                                              "end": 1910,
                                              "loc": {
                                                "start": {
                                                  "line": 59,
                                                  "column": 17
                                                },
                                                "end": {
                                                  "line": 59,
                                                  "column": 21
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1911,
                                              "end": 1923,
                                              "loc": {
                                                "start": {
                                                  "line": 59,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 59,
                                                  "column": 34
                                                }
                                              },
                                              "name": "__parentView"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 1924,
                                            "end": 1929,
                                            "loc": {
                                              "start": {
                                                "line": 59,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 59,
                                                "column": 40
                                              }
                                            },
                                            "name": "input"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 1930,
                                          "end": 1936,
                                          "loc": {
                                            "start": {
                                              "line": 59,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 59,
                                              "column": 47
                                            }
                                          },
                                          "name": "recent"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1937,
                                        "end": 1946,
                                        "loc": {
                                          "start": {
                                            "line": 59,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 59,
                                            "column": 57
                                          }
                                        },
                                        "name": "mousemove"
                                      },
                                      "computed": false
                                    }
                                  },
                                  "consequent": {
                                    "type": "ReturnStatement",
                                    "start": 1964,
                                    "end": 1971,
                                    "loc": {
                                      "start": {
                                        "line": 60,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 60,
                                        "column": 23
                                      }
                                    },
                                    "argument": null,
                                    "leadingComments": null,
                                    "trailingComments": null
                                  },
                                  "alternate": null,
                                  "trailingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": "no one moved the mouse",
                                      "start": 1972,
                                      "end": 1996,
                                      "loc": {
                                        "start": {
                                          "line": 60,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 60,
                                          "column": 48
                                        }
                                      },
                                      "range": [
                                        1972,
                                        1996
                                      ]
                                    },
                                    {
                                      "type": "CommentLine",
                                      "value": "mouse coordinates in pixels",
                                      "start": 2009,
                                      "end": 2038,
                                      "loc": {
                                        "start": {
                                          "line": 61,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 61,
                                          "column": 41
                                        }
                                      },
                                      "range": [
                                        2009,
                                        2038
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 2051,
                                  "end": 2182,
                                  "loc": {
                                    "start": {
                                      "line": 62,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 62,
                                      "column": 143
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 2055,
                                      "end": 2181,
                                      "loc": {
                                        "start": {
                                          "line": 62,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 62,
                                          "column": 142
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 2055,
                                        "end": 2061,
                                        "loc": {
                                          "start": {
                                            "line": 62,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 62,
                                            "column": 22
                                          }
                                        },
                                        "name": "point2",
                                        "leadingComments": null
                                      },
                                      "init": {
                                        "type": "NewExpression",
                                        "start": 2064,
                                        "end": 2181,
                                        "loc": {
                                          "start": {
                                            "line": 62,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 62,
                                            "column": 142
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 2068,
                                          "end": 2081,
                                          "loc": {
                                            "start": {
                                              "line": 62,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 62,
                                              "column": 42
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 2068,
                                            "end": 2073,
                                            "loc": {
                                              "start": {
                                                "line": 62,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 62,
                                                "column": 34
                                              }
                                            },
                                            "name": "THREE"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 2074,
                                            "end": 2081,
                                            "loc": {
                                              "start": {
                                                "line": 62,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 62,
                                                "column": 42
                                              }
                                            },
                                            "name": "Vector2"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "MemberExpression",
                                            "start": 2082,
                                            "end": 2130,
                                            "loc": {
                                              "start": {
                                                "line": 62,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 62,
                                                "column": 91
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 2082,
                                              "end": 2122,
                                              "loc": {
                                                "start": {
                                                  "line": 62,
                                                  "column": 43
                                                },
                                                "end": {
                                                  "line": 62,
                                                  "column": 83
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 2082,
                                                "end": 2112,
                                                "loc": {
                                                  "start": {
                                                    "line": 62,
                                                    "column": 43
                                                  },
                                                  "end": {
                                                    "line": 62,
                                                    "column": 73
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 2082,
                                                  "end": 2105,
                                                  "loc": {
                                                    "start": {
                                                      "line": 62,
                                                      "column": 43
                                                    },
                                                    "end": {
                                                      "line": 62,
                                                      "column": 66
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 2082,
                                                    "end": 2099,
                                                    "loc": {
                                                      "start": {
                                                        "line": 62,
                                                        "column": 43
                                                      },
                                                      "end": {
                                                        "line": 62,
                                                        "column": 60
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "ThisExpression",
                                                      "start": 2082,
                                                      "end": 2086,
                                                      "loc": {
                                                        "start": {
                                                          "line": 62,
                                                          "column": 43
                                                        },
                                                        "end": {
                                                          "line": 62,
                                                          "column": 47
                                                        }
                                                      }
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2087,
                                                      "end": 2099,
                                                      "loc": {
                                                        "start": {
                                                          "line": 62,
                                                          "column": 48
                                                        },
                                                        "end": {
                                                          "line": 62,
                                                          "column": 60
                                                        }
                                                      },
                                                      "name": "__parentView"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2100,
                                                    "end": 2105,
                                                    "loc": {
                                                      "start": {
                                                        "line": 62,
                                                        "column": 61
                                                      },
                                                      "end": {
                                                        "line": 62,
                                                        "column": 66
                                                      }
                                                    },
                                                    "name": "input"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2106,
                                                  "end": 2112,
                                                  "loc": {
                                                    "start": {
                                                      "line": 62,
                                                      "column": 67
                                                    },
                                                    "end": {
                                                      "line": 62,
                                                      "column": 73
                                                    }
                                                  },
                                                  "name": "recent"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 2113,
                                                "end": 2122,
                                                "loc": {
                                                  "start": {
                                                    "line": 62,
                                                    "column": 74
                                                  },
                                                  "end": {
                                                    "line": 62,
                                                    "column": 83
                                                  }
                                                },
                                                "name": "mousemove"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2123,
                                              "end": 2130,
                                              "loc": {
                                                "start": {
                                                  "line": 62,
                                                  "column": 84
                                                },
                                                "end": {
                                                  "line": 62,
                                                  "column": 91
                                                }
                                              },
                                              "name": "offsetX"
                                            },
                                            "computed": false
                                          },
                                          {
                                            "type": "MemberExpression",
                                            "start": 2132,
                                            "end": 2180,
                                            "loc": {
                                              "start": {
                                                "line": 62,
                                                "column": 93
                                              },
                                              "end": {
                                                "line": 62,
                                                "column": 141
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 2132,
                                              "end": 2172,
                                              "loc": {
                                                "start": {
                                                  "line": 62,
                                                  "column": 93
                                                },
                                                "end": {
                                                  "line": 62,
                                                  "column": 133
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 2132,
                                                "end": 2162,
                                                "loc": {
                                                  "start": {
                                                    "line": 62,
                                                    "column": 93
                                                  },
                                                  "end": {
                                                    "line": 62,
                                                    "column": 123
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 2132,
                                                  "end": 2155,
                                                  "loc": {
                                                    "start": {
                                                      "line": 62,
                                                      "column": 93
                                                    },
                                                    "end": {
                                                      "line": 62,
                                                      "column": 116
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 2132,
                                                    "end": 2149,
                                                    "loc": {
                                                      "start": {
                                                        "line": 62,
                                                        "column": 93
                                                      },
                                                      "end": {
                                                        "line": 62,
                                                        "column": 110
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "ThisExpression",
                                                      "start": 2132,
                                                      "end": 2136,
                                                      "loc": {
                                                        "start": {
                                                          "line": 62,
                                                          "column": 93
                                                        },
                                                        "end": {
                                                          "line": 62,
                                                          "column": 97
                                                        }
                                                      }
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2137,
                                                      "end": 2149,
                                                      "loc": {
                                                        "start": {
                                                          "line": 62,
                                                          "column": 98
                                                        },
                                                        "end": {
                                                          "line": 62,
                                                          "column": 110
                                                        }
                                                      },
                                                      "name": "__parentView"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2150,
                                                    "end": 2155,
                                                    "loc": {
                                                      "start": {
                                                        "line": 62,
                                                        "column": 111
                                                      },
                                                      "end": {
                                                        "line": 62,
                                                        "column": 116
                                                      }
                                                    },
                                                    "name": "input"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2156,
                                                  "end": 2162,
                                                  "loc": {
                                                    "start": {
                                                      "line": 62,
                                                      "column": 117
                                                    },
                                                    "end": {
                                                      "line": 62,
                                                      "column": 123
                                                    }
                                                  },
                                                  "name": "recent"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 2163,
                                                "end": 2172,
                                                "loc": {
                                                  "start": {
                                                    "line": 62,
                                                    "column": 124
                                                  },
                                                  "end": {
                                                    "line": 62,
                                                    "column": 133
                                                  }
                                                },
                                                "name": "mousemove"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2173,
                                              "end": 2180,
                                              "loc": {
                                                "start": {
                                                  "line": 62,
                                                  "column": 134
                                                },
                                                "end": {
                                                  "line": 62,
                                                  "column": 141
                                                }
                                              },
                                              "name": "offsetY"
                                            },
                                            "computed": false
                                          }
                                        ]
                                      },
                                      "leadingComments": null
                                    }
                                  ],
                                  "kind": "let",
                                  "leadingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": "no one moved the mouse",
                                      "start": 1972,
                                      "end": 1996,
                                      "loc": {
                                        "start": {
                                          "line": 60,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 60,
                                          "column": 48
                                        }
                                      },
                                      "range": [
                                        1972,
                                        1996
                                      ]
                                    },
                                    {
                                      "type": "CommentLine",
                                      "value": "mouse coordinates in pixels",
                                      "start": 2009,
                                      "end": 2038,
                                      "loc": {
                                        "start": {
                                          "line": 61,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 61,
                                          "column": 41
                                        }
                                      },
                                      "range": [
                                        2009,
                                        2038
                                      ]
                                    }
                                  ],
                                  "trailingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": "3D line of corresponding points (in world coords)",
                                      "start": 2195,
                                      "end": 2246,
                                      "loc": {
                                        "start": {
                                          "line": 63,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 63,
                                          "column": 63
                                        }
                                      },
                                      "range": [
                                        2195,
                                        2246
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 2259,
                                  "end": 2310,
                                  "loc": {
                                    "start": {
                                      "line": 64,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 64,
                                      "column": 63
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 2263,
                                      "end": 2309,
                                      "loc": {
                                        "start": {
                                          "line": 64,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 64,
                                          "column": 62
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 2263,
                                        "end": 2268,
                                        "loc": {
                                          "start": {
                                            "line": 64,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 64,
                                            "column": 21
                                          }
                                        },
                                        "name": "line3",
                                        "leadingComments": null
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 2271,
                                        "end": 2309,
                                        "loc": {
                                          "start": {
                                            "line": 64,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 64,
                                            "column": 62
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 2271,
                                          "end": 2301,
                                          "loc": {
                                            "start": {
                                              "line": 64,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 64,
                                              "column": 54
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 2271,
                                            "end": 2288,
                                            "loc": {
                                              "start": {
                                                "line": 64,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 64,
                                                "column": 41
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 2271,
                                              "end": 2275,
                                              "loc": {
                                                "start": {
                                                  "line": 64,
                                                  "column": 24
                                                },
                                                "end": {
                                                  "line": 64,
                                                  "column": 28
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2276,
                                              "end": 2288,
                                              "loc": {
                                                "start": {
                                                  "line": 64,
                                                  "column": 29
                                                },
                                                "end": {
                                                  "line": 64,
                                                  "column": 41
                                                }
                                              },
                                              "name": "__parentView"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 2289,
                                            "end": 2301,
                                            "loc": {
                                              "start": {
                                                "line": 64,
                                                "column": 42
                                              },
                                              "end": {
                                                "line": 64,
                                                "column": 54
                                              }
                                            },
                                            "name": "getViewLine3"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 2302,
                                            "end": 2308,
                                            "loc": {
                                              "start": {
                                                "line": 64,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 64,
                                                "column": 61
                                              }
                                            },
                                            "name": "point2"
                                          }
                                        ]
                                      },
                                      "leadingComments": null
                                    }
                                  ],
                                  "kind": "let",
                                  "leadingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": "3D line of corresponding points (in world coords)",
                                      "start": 2195,
                                      "end": 2246,
                                      "loc": {
                                        "start": {
                                          "line": 63,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 63,
                                          "column": 63
                                        }
                                      },
                                      "range": [
                                        2195,
                                        2246
                                      ]
                                    }
                                  ],
                                  "trailingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": "transform line from world to sketch coords",
                                      "start": 2323,
                                      "end": 2367,
                                      "loc": {
                                        "start": {
                                          "line": 65,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 65,
                                          "column": 56
                                        }
                                      },
                                      "range": [
                                        2323,
                                        2367
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 2380,
                                  "end": 2462,
                                  "loc": {
                                    "start": {
                                      "line": 66,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 66,
                                      "column": 94
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 2384,
                                      "end": 2461,
                                      "loc": {
                                        "start": {
                                          "line": 66,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 66,
                                          "column": 93
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 2384,
                                        "end": 2396,
                                        "loc": {
                                          "start": {
                                            "line": 66,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 66,
                                            "column": 28
                                          }
                                        },
                                        "name": "worldToLocal",
                                        "leadingComments": null
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 2399,
                                        "end": 2461,
                                        "loc": {
                                          "start": {
                                            "line": 66,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 66,
                                            "column": 93
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 2399,
                                          "end": 2429,
                                          "loc": {
                                            "start": {
                                              "line": 66,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 66,
                                              "column": 61
                                            }
                                          },
                                          "object": {
                                            "type": "NewExpression",
                                            "start": 2399,
                                            "end": 2418,
                                            "loc": {
                                              "start": {
                                                "line": 66,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 66,
                                                "column": 50
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 2403,
                                              "end": 2416,
                                              "loc": {
                                                "start": {
                                                  "line": 66,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 66,
                                                  "column": 48
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 2403,
                                                "end": 2408,
                                                "loc": {
                                                  "start": {
                                                    "line": 66,
                                                    "column": 35
                                                  },
                                                  "end": {
                                                    "line": 66,
                                                    "column": 40
                                                  }
                                                },
                                                "name": "THREE"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 2409,
                                                "end": 2416,
                                                "loc": {
                                                  "start": {
                                                    "line": 66,
                                                    "column": 41
                                                  },
                                                  "end": {
                                                    "line": 66,
                                                    "column": 48
                                                  }
                                                },
                                                "name": "Matrix4"
                                              },
                                              "computed": false
                                            },
                                            "arguments": []
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 2419,
                                            "end": 2429,
                                            "loc": {
                                              "start": {
                                                "line": 66,
                                                "column": 51
                                              },
                                              "end": {
                                                "line": 66,
                                                "column": 61
                                              }
                                            },
                                            "name": "getInverse"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "MemberExpression",
                                            "start": 2430,
                                            "end": 2460,
                                            "loc": {
                                              "start": {
                                                "line": 66,
                                                "column": 62
                                              },
                                              "end": {
                                                "line": 66,
                                                "column": 92
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 2430,
                                              "end": 2448,
                                              "loc": {
                                                "start": {
                                                  "line": 66,
                                                  "column": 62
                                                },
                                                "end": {
                                                  "line": 66,
                                                  "column": 80
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 2430,
                                                "end": 2434,
                                                "loc": {
                                                  "start": {
                                                    "line": 66,
                                                    "column": 62
                                                  },
                                                  "end": {
                                                    "line": 66,
                                                    "column": 66
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 2435,
                                                "end": 2448,
                                                "loc": {
                                                  "start": {
                                                    "line": 66,
                                                    "column": 67
                                                  },
                                                  "end": {
                                                    "line": 66,
                                                    "column": 80
                                                  }
                                                },
                                                "name": "currentSketch"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2449,
                                              "end": 2460,
                                              "loc": {
                                                "start": {
                                                  "line": 66,
                                                  "column": 81
                                                },
                                                "end": {
                                                  "line": 66,
                                                  "column": 92
                                                }
                                              },
                                              "name": "matrixWorld"
                                            },
                                            "computed": false
                                          }
                                        ]
                                      },
                                      "leadingComments": null
                                    }
                                  ],
                                  "kind": "let",
                                  "leadingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": "transform line from world to sketch coords",
                                      "start": 2323,
                                      "end": 2367,
                                      "loc": {
                                        "start": {
                                          "line": 65,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 65,
                                          "column": 56
                                        }
                                      },
                                      "range": [
                                        2323,
                                        2367
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 2475,
                                  "end": 2508,
                                  "loc": {
                                    "start": {
                                      "line": 67,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 67,
                                      "column": 45
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 2475,
                                    "end": 2507,
                                    "loc": {
                                      "start": {
                                        "line": 67,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 67,
                                        "column": 44
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 2475,
                                      "end": 2493,
                                      "loc": {
                                        "start": {
                                          "line": 67,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 67,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 2475,
                                        "end": 2480,
                                        "loc": {
                                          "start": {
                                            "line": 67,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 67,
                                            "column": 17
                                          }
                                        },
                                        "name": "line3"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 2481,
                                        "end": 2493,
                                        "loc": {
                                          "start": {
                                            "line": 67,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 67,
                                            "column": 30
                                          }
                                        },
                                        "name": "applyMatrix4"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 2494,
                                        "end": 2506,
                                        "loc": {
                                          "start": {
                                            "line": 67,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 67,
                                            "column": 43
                                          }
                                        },
                                        "name": "worldToLocal"
                                      }
                                    ]
                                  },
                                  "trailingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": "calculate intersection of line with z = 0 plane",
                                      "start": 2521,
                                      "end": 2570,
                                      "loc": {
                                        "start": {
                                          "line": 68,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 68,
                                          "column": 61
                                        }
                                      },
                                      "range": [
                                        2521,
                                        2570
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 2583,
                                  "end": 2647,
                                  "loc": {
                                    "start": {
                                      "line": 69,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 69,
                                      "column": 76
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 2587,
                                      "end": 2646,
                                      "loc": {
                                        "start": {
                                          "line": 69,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 69,
                                          "column": 75
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 2587,
                                        "end": 2592,
                                        "loc": {
                                          "start": {
                                            "line": 69,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 69,
                                            "column": 21
                                          }
                                        },
                                        "name": "param",
                                        "leadingComments": null
                                      },
                                      "init": {
                                        "type": "BinaryExpression",
                                        "start": 2595,
                                        "end": 2646,
                                        "loc": {
                                          "start": {
                                            "line": 69,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 69,
                                            "column": 75
                                          }
                                        },
                                        "left": {
                                          "type": "BinaryExpression",
                                          "start": 2596,
                                          "end": 2613,
                                          "loc": {
                                            "start": {
                                              "line": 69,
                                              "column": 25
                                            },
                                            "end": {
                                              "line": 69,
                                              "column": 42
                                            }
                                          },
                                          "left": {
                                            "type": "Literal",
                                            "start": 2596,
                                            "end": 2597,
                                            "loc": {
                                              "start": {
                                                "line": 69,
                                                "column": 25
                                              },
                                              "end": {
                                                "line": 69,
                                                "column": 26
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0"
                                          },
                                          "operator": "-",
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 2600,
                                            "end": 2613,
                                            "loc": {
                                              "start": {
                                                "line": 69,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 69,
                                                "column": 42
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 2600,
                                              "end": 2611,
                                              "loc": {
                                                "start": {
                                                  "line": 69,
                                                  "column": 29
                                                },
                                                "end": {
                                                  "line": 69,
                                                  "column": 40
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 2600,
                                                "end": 2605,
                                                "loc": {
                                                  "start": {
                                                    "line": 69,
                                                    "column": 29
                                                  },
                                                  "end": {
                                                    "line": 69,
                                                    "column": 34
                                                  }
                                                },
                                                "name": "line3"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 2606,
                                                "end": 2611,
                                                "loc": {
                                                  "start": {
                                                    "line": 69,
                                                    "column": 35
                                                  },
                                                  "end": {
                                                    "line": 69,
                                                    "column": 40
                                                  }
                                                },
                                                "name": "start"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2612,
                                              "end": 2613,
                                              "loc": {
                                                "start": {
                                                  "line": 69,
                                                  "column": 41
                                                },
                                                "end": {
                                                  "line": 69,
                                                  "column": 42
                                                }
                                              },
                                              "name": "z"
                                            },
                                            "computed": false
                                          },
                                          "parenthesizedExpression": true
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "BinaryExpression",
                                          "start": 2618,
                                          "end": 2645,
                                          "loc": {
                                            "start": {
                                              "line": 69,
                                              "column": 47
                                            },
                                            "end": {
                                              "line": 69,
                                              "column": 74
                                            }
                                          },
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 2618,
                                            "end": 2629,
                                            "loc": {
                                              "start": {
                                                "line": 69,
                                                "column": 47
                                              },
                                              "end": {
                                                "line": 69,
                                                "column": 58
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 2618,
                                              "end": 2627,
                                              "loc": {
                                                "start": {
                                                  "line": 69,
                                                  "column": 47
                                                },
                                                "end": {
                                                  "line": 69,
                                                  "column": 56
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 2618,
                                                "end": 2623,
                                                "loc": {
                                                  "start": {
                                                    "line": 69,
                                                    "column": 47
                                                  },
                                                  "end": {
                                                    "line": 69,
                                                    "column": 52
                                                  }
                                                },
                                                "name": "line3"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 2624,
                                                "end": 2627,
                                                "loc": {
                                                  "start": {
                                                    "line": 69,
                                                    "column": 53
                                                  },
                                                  "end": {
                                                    "line": 69,
                                                    "column": 56
                                                  }
                                                },
                                                "name": "end"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2628,
                                              "end": 2629,
                                              "loc": {
                                                "start": {
                                                  "line": 69,
                                                  "column": 57
                                                },
                                                "end": {
                                                  "line": 69,
                                                  "column": 58
                                                }
                                              },
                                              "name": "z"
                                            },
                                            "computed": false
                                          },
                                          "operator": "-",
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 2632,
                                            "end": 2645,
                                            "loc": {
                                              "start": {
                                                "line": 69,
                                                "column": 61
                                              },
                                              "end": {
                                                "line": 69,
                                                "column": 74
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 2632,
                                              "end": 2643,
                                              "loc": {
                                                "start": {
                                                  "line": 69,
                                                  "column": 61
                                                },
                                                "end": {
                                                  "line": 69,
                                                  "column": 72
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 2632,
                                                "end": 2637,
                                                "loc": {
                                                  "start": {
                                                    "line": 69,
                                                    "column": 61
                                                  },
                                                  "end": {
                                                    "line": 69,
                                                    "column": 66
                                                  }
                                                },
                                                "name": "line3"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 2638,
                                                "end": 2643,
                                                "loc": {
                                                  "start": {
                                                    "line": 69,
                                                    "column": 67
                                                  },
                                                  "end": {
                                                    "line": 69,
                                                    "column": 72
                                                  }
                                                },
                                                "name": "start"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2644,
                                              "end": 2645,
                                              "loc": {
                                                "start": {
                                                  "line": 69,
                                                  "column": 73
                                                },
                                                "end": {
                                                  "line": 69,
                                                  "column": 74
                                                }
                                              },
                                              "name": "z"
                                            },
                                            "computed": false
                                          },
                                          "parenthesizedExpression": true
                                        }
                                      },
                                      "leadingComments": null
                                    }
                                  ],
                                  "kind": "var",
                                  "leadingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": "calculate intersection of line with z = 0 plane",
                                      "start": 2521,
                                      "end": 2570,
                                      "loc": {
                                        "start": {
                                          "line": 68,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 68,
                                          "column": 61
                                        }
                                      },
                                      "range": [
                                        2521,
                                        2570
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 2660,
                                  "end": 2694,
                                  "loc": {
                                    "start": {
                                      "line": 70,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 70,
                                      "column": 46
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 2664,
                                      "end": 2693,
                                      "loc": {
                                        "start": {
                                          "line": 70,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 70,
                                          "column": 45
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 2664,
                                        "end": 2675,
                                        "loc": {
                                          "start": {
                                            "line": 70,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 70,
                                            "column": 27
                                          }
                                        },
                                        "name": "sketchPoint"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 2678,
                                        "end": 2693,
                                        "loc": {
                                          "start": {
                                            "line": 70,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 70,
                                            "column": 45
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 2678,
                                          "end": 2686,
                                          "loc": {
                                            "start": {
                                              "line": 70,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 70,
                                              "column": 38
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 2678,
                                            "end": 2683,
                                            "loc": {
                                              "start": {
                                                "line": 70,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 70,
                                                "column": 35
                                              }
                                            },
                                            "name": "line3"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 2684,
                                            "end": 2686,
                                            "loc": {
                                              "start": {
                                                "line": 70,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 70,
                                                "column": 38
                                              }
                                            },
                                            "name": "at"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 2687,
                                            "end": 2692,
                                            "loc": {
                                              "start": {
                                                "line": 70,
                                                "column": 39
                                              },
                                              "end": {
                                                "line": 70,
                                                "column": 44
                                              }
                                            },
                                            "name": "param"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "let"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 2707,
                                  "end": 2725,
                                  "loc": {
                                    "start": {
                                      "line": 71,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 71,
                                      "column": 30
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 2707,
                                    "end": 2724,
                                    "loc": {
                                      "start": {
                                        "line": 71,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 71,
                                        "column": 29
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 2707,
                                      "end": 2720,
                                      "loc": {
                                        "start": {
                                          "line": 71,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 71,
                                          "column": 25
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 2707,
                                        "end": 2718,
                                        "loc": {
                                          "start": {
                                            "line": 71,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 71,
                                            "column": 23
                                          }
                                        },
                                        "name": "sketchPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 2719,
                                        "end": 2720,
                                        "loc": {
                                          "start": {
                                            "line": 71,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 71,
                                            "column": 25
                                          }
                                        },
                                        "name": "z"
                                      },
                                      "computed": false
                                    },
                                    "right": {
                                      "type": "Literal",
                                      "start": 2723,
                                      "end": 2724,
                                      "loc": {
                                        "start": {
                                          "line": 71,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 71,
                                          "column": 29
                                        }
                                      },
                                      "value": 0,
                                      "rawValue": 0,
                                      "raw": "0"
                                    }
                                  },
                                  "trailingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": "ensure it is exactly zero",
                                      "start": 2727,
                                      "end": 2754,
                                      "loc": {
                                        "start": {
                                          "line": 71,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 71,
                                          "column": 59
                                        }
                                      },
                                      "range": [
                                        2727,
                                        2754
                                      ]
                                    },
                                    {
                                      "type": "CommentLine",
                                      "value": "if changed, call mouse move handler",
                                      "start": 2767,
                                      "end": 2804,
                                      "loc": {
                                        "start": {
                                          "line": 72,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 72,
                                          "column": 49
                                        }
                                      },
                                      "range": [
                                        2767,
                                        2804
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 2817,
                                  "end": 2950,
                                  "loc": {
                                    "start": {
                                      "line": 73,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 74,
                                      "column": 75
                                    }
                                  },
                                  "test": {
                                    "type": "UnaryExpression",
                                    "start": 2821,
                                    "end": 2873,
                                    "loc": {
                                      "start": {
                                        "line": 73,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 73,
                                        "column": 68
                                      }
                                    },
                                    "operator": "!",
                                    "prefix": true,
                                    "argument": {
                                      "type": "CallExpression",
                                      "start": 2822,
                                      "end": 2873,
                                      "loc": {
                                        "start": {
                                          "line": 73,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 73,
                                          "column": 68
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 2822,
                                        "end": 2840,
                                        "loc": {
                                          "start": {
                                            "line": 73,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 73,
                                            "column": 35
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 2822,
                                          "end": 2833,
                                          "loc": {
                                            "start": {
                                              "line": 73,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 73,
                                              "column": 28
                                            }
                                          },
                                          "name": "sketchPoint",
                                          "leadingComments": null
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 2834,
                                          "end": 2840,
                                          "loc": {
                                            "start": {
                                              "line": 73,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 73,
                                              "column": 35
                                            }
                                          },
                                          "name": "equals"
                                        },
                                        "computed": false,
                                        "leadingComments": null
                                      },
                                      "arguments": [
                                        {
                                          "type": "MemberExpression",
                                          "start": 2841,
                                          "end": 2872,
                                          "loc": {
                                            "start": {
                                              "line": 73,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 73,
                                              "column": 67
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 2841,
                                            "end": 2855,
                                            "loc": {
                                              "start": {
                                                "line": 73,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 73,
                                                "column": 50
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 2841,
                                              "end": 2845,
                                              "loc": {
                                                "start": {
                                                  "line": 73,
                                                  "column": 36
                                                },
                                                "end": {
                                                  "line": 73,
                                                  "column": 40
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2846,
                                              "end": 2855,
                                              "loc": {
                                                "start": {
                                                  "line": 73,
                                                  "column": 41
                                                },
                                                "end": {
                                                  "line": 73,
                                                  "column": 50
                                                }
                                              },
                                              "name": "modelData"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 2856,
                                            "end": 2872,
                                            "loc": {
                                              "start": {
                                                "line": 73,
                                                "column": 51
                                              },
                                              "end": {
                                                "line": 73,
                                                "column": 67
                                              }
                                            },
                                            "name": "interactionPoint"
                                          },
                                          "computed": false
                                        }
                                      ],
                                      "leadingComments": null
                                    },
                                    "leadingComments": null
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 2891,
                                    "end": 2950,
                                    "loc": {
                                      "start": {
                                        "line": 74,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 74,
                                        "column": 75
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 2891,
                                      "end": 2949,
                                      "loc": {
                                        "start": {
                                          "line": 74,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 74,
                                          "column": 74
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 2891,
                                        "end": 2916,
                                        "loc": {
                                          "start": {
                                            "line": 74,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 74,
                                            "column": 41
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 2891,
                                          "end": 2895,
                                          "loc": {
                                            "start": {
                                              "line": 74,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 74,
                                              "column": 20
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 2896,
                                          "end": 2916,
                                          "loc": {
                                            "start": {
                                              "line": 74,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 74,
                                              "column": 41
                                            }
                                          },
                                          "name": "sketchAreaMouseMoved"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "MemberExpression",
                                          "start": 2917,
                                          "end": 2935,
                                          "loc": {
                                            "start": {
                                              "line": 74,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 74,
                                              "column": 60
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 2917,
                                            "end": 2921,
                                            "loc": {
                                              "start": {
                                                "line": 74,
                                                "column": 42
                                              },
                                              "end": {
                                                "line": 74,
                                                "column": 46
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 2922,
                                            "end": 2935,
                                            "loc": {
                                              "start": {
                                                "line": 74,
                                                "column": 47
                                              },
                                              "end": {
                                                "line": 74,
                                                "column": 60
                                              }
                                            },
                                            "name": "currentSketch"
                                          },
                                          "computed": false
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 2937,
                                          "end": 2948,
                                          "loc": {
                                            "start": {
                                              "line": 74,
                                              "column": 62
                                            },
                                            "end": {
                                              "line": 74,
                                              "column": 73
                                            }
                                          },
                                          "name": "sketchPoint"
                                        }
                                      ]
                                    }
                                  },
                                  "alternate": null,
                                  "leadingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": "ensure it is exactly zero",
                                      "start": 2727,
                                      "end": 2754,
                                      "loc": {
                                        "start": {
                                          "line": 71,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 71,
                                          "column": 59
                                        }
                                      },
                                      "range": [
                                        2727,
                                        2754
                                      ]
                                    },
                                    {
                                      "type": "CommentLine",
                                      "value": "if changed, call mouse move handler",
                                      "start": 2767,
                                      "end": 2804,
                                      "loc": {
                                        "start": {
                                          "line": 72,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 72,
                                          "column": 49
                                        }
                                      },
                                      "range": [
                                        2767,
                                        2804
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 2964,
                                  "end": 2979,
                                  "loc": {
                                    "start": {
                                      "line": 76,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 76,
                                      "column": 27
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 2964,
                                    "end": 2978,
                                    "loc": {
                                      "start": {
                                        "line": 76,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 76,
                                        "column": 26
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 2964,
                                      "end": 2976,
                                      "loc": {
                                        "start": {
                                          "line": 76,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 76,
                                          "column": 24
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 2964,
                                        "end": 2968,
                                        "loc": {
                                          "start": {
                                            "line": 76,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 76,
                                            "column": 16
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 2969,
                                        "end": 2976,
                                        "loc": {
                                          "start": {
                                            "line": 76,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 76,
                                            "column": 24
                                          }
                                        },
                                        "name": "refresh"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " data for viewmodel",
                          "start": 3001,
                          "end": 3022,
                          "loc": {
                            "start": {
                              "line": 79,
                              "column": 8
                            },
                            "end": {
                              "line": 79,
                              "column": 29
                            }
                          },
                          "range": [
                            3001,
                            3022
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3031,
                      "end": 3973,
                      "loc": {
                        "start": {
                          "line": 80,
                          "column": 8
                        },
                        "end": {
                          "line": 98,
                          "column": 10
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3031,
                        "end": 3972,
                        "loc": {
                          "start": {
                            "line": 80,
                            "column": 8
                          },
                          "end": {
                            "line": 98,
                            "column": 9
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3031,
                          "end": 3045,
                          "loc": {
                            "start": {
                              "line": 80,
                              "column": 8
                            },
                            "end": {
                              "line": 80,
                              "column": 22
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3031,
                            "end": 3035,
                            "loc": {
                              "start": {
                                "line": 80,
                                "column": 8
                              },
                              "end": {
                                "line": 80,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3036,
                            "end": 3045,
                            "loc": {
                              "start": {
                                "line": 80,
                                "column": 13
                              },
                              "end": {
                                "line": 80,
                                "column": 22
                              }
                            },
                            "name": "modelData"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "ObjectExpression",
                          "start": 3048,
                          "end": 3972,
                          "loc": {
                            "start": {
                              "line": 80,
                              "column": 25
                            },
                            "end": {
                              "line": 98,
                              "column": 9
                            }
                          },
                          "properties": [
                            {
                              "type": "Property",
                              "start": 3062,
                              "end": 3085,
                              "loc": {
                                "start": {
                                  "line": 81,
                                  "column": 12
                                },
                                "end": {
                                  "line": 81,
                                  "column": 35
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 3062,
                                "end": 3078,
                                "loc": {
                                  "start": {
                                    "line": 81,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 81,
                                    "column": 28
                                  }
                                },
                                "name": "isSketchSelected"
                              },
                              "value": {
                                "type": "Literal",
                                "start": 3080,
                                "end": 3085,
                                "loc": {
                                  "start": {
                                    "line": 81,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 81,
                                    "column": 35
                                  }
                                },
                                "value": false,
                                "rawValue": false,
                                "raw": "false"
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 3099,
                              "end": 3113,
                              "loc": {
                                "start": {
                                  "line": 82,
                                  "column": 12
                                },
                                "end": {
                                  "line": 82,
                                  "column": 26
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 3099,
                                "end": 3109,
                                "loc": {
                                  "start": {
                                    "line": 82,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 82,
                                    "column": 22
                                  }
                                },
                                "name": "promptText"
                              },
                              "value": {
                                "type": "Literal",
                                "start": 3111,
                                "end": 3113,
                                "loc": {
                                  "start": {
                                    "line": 82,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 82,
                                    "column": 26
                                  }
                                },
                                "value": "",
                                "rawValue": "",
                                "raw": "''"
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 3127,
                              "end": 3157,
                              "loc": {
                                "start": {
                                  "line": 83,
                                  "column": 12
                                },
                                "end": {
                                  "line": 83,
                                  "column": 42
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 3127,
                                "end": 3150,
                                "loc": {
                                  "start": {
                                    "line": 83,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 83,
                                    "column": 35
                                  }
                                },
                                "name": "isConstraintFormVisible"
                              },
                              "value": {
                                "type": "Literal",
                                "start": 3152,
                                "end": 3157,
                                "loc": {
                                  "start": {
                                    "line": 83,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 83,
                                    "column": 42
                                  }
                                },
                                "value": false,
                                "rawValue": false,
                                "raw": "false"
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 3171,
                              "end": 3195,
                              "loc": {
                                "start": {
                                  "line": 84,
                                  "column": 12
                                },
                                "end": {
                                  "line": 84,
                                  "column": 36
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 3171,
                                "end": 3191,
                                "loc": {
                                  "start": {
                                    "line": 84,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 84,
                                    "column": 32
                                  }
                                },
                                "name": "constraintExpression"
                              },
                              "value": {
                                "type": "Literal",
                                "start": 3193,
                                "end": 3195,
                                "loc": {
                                  "start": {
                                    "line": 84,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 84,
                                    "column": 36
                                  }
                                },
                                "value": "",
                                "rawValue": "",
                                "raw": "\"\""
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 3209,
                              "end": 3227,
                              "loc": {
                                "start": {
                                  "line": 85,
                                  "column": 12
                                },
                                "end": {
                                  "line": 85,
                                  "column": 30
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 3209,
                                "end": 3224,
                                "loc": {
                                  "start": {
                                    "line": 85,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 85,
                                    "column": 27
                                  }
                                },
                                "name": "constraintValue"
                              },
                              "value": {
                                "type": "Literal",
                                "start": 3226,
                                "end": 3227,
                                "loc": {
                                  "start": {
                                    "line": 85,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 85,
                                    "column": 30
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 3241,
                              "end": 3262,
                              "loc": {
                                "start": {
                                  "line": 86,
                                  "column": 12
                                },
                                "end": {
                                  "line": 86,
                                  "column": 33
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 3241,
                                "end": 3256,
                                "loc": {
                                  "start": {
                                    "line": 86,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 86,
                                    "column": 27
                                  }
                                },
                                "name": "constraintFixed"
                              },
                              "value": {
                                "type": "Literal",
                                "start": 3258,
                                "end": 3262,
                                "loc": {
                                  "start": {
                                    "line": 86,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 86,
                                    "column": 33
                                  }
                                },
                                "value": true,
                                "rawValue": true,
                                "raw": "true"
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 3276,
                              "end": 3402,
                              "loc": {
                                "start": {
                                  "line": 87,
                                  "column": 12
                                },
                                "end": {
                                  "line": 87,
                                  "column": 138
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 3280,
                                "end": 3290,
                                "loc": {
                                  "start": {
                                    "line": 87,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 87,
                                    "column": 26
                                  }
                                },
                                "name": "constraint"
                              },
                              "kind": "get",
                              "value": {
                                "type": "FunctionExpression",
                                "start": 3290,
                                "end": 3402,
                                "loc": {
                                  "start": {
                                    "line": 87,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 87,
                                    "column": 138
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": false,
                                "async": false,
                                "params": [],
                                "body": {
                                  "type": "BlockStatement",
                                  "start": 3293,
                                  "end": 3402,
                                  "loc": {
                                    "start": {
                                      "line": 87,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 87,
                                      "column": 138
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "ReturnStatement",
                                      "start": 3295,
                                      "end": 3400,
                                      "loc": {
                                        "start": {
                                          "line": 87,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 87,
                                          "column": 136
                                        }
                                      },
                                      "argument": {
                                        "type": "ObjectExpression",
                                        "start": 3302,
                                        "end": 3399,
                                        "loc": {
                                          "start": {
                                            "line": 87,
                                            "column": 38
                                          },
                                          "end": {
                                            "line": 87,
                                            "column": 135
                                          }
                                        },
                                        "properties": [
                                          {
                                            "type": "Property",
                                            "start": 3303,
                                            "end": 3340,
                                            "loc": {
                                              "start": {
                                                "line": 87,
                                                "column": 39
                                              },
                                              "end": {
                                                "line": 87,
                                                "column": 76
                                              }
                                            },
                                            "method": false,
                                            "shorthand": false,
                                            "computed": false,
                                            "key": {
                                              "type": "Identifier",
                                              "start": 3303,
                                              "end": 3313,
                                              "loc": {
                                                "start": {
                                                  "line": 87,
                                                  "column": 39
                                                },
                                                "end": {
                                                  "line": 87,
                                                  "column": 49
                                                }
                                              },
                                              "name": "expression"
                                            },
                                            "value": {
                                              "type": "MemberExpression",
                                              "start": 3315,
                                              "end": 3340,
                                              "loc": {
                                                "start": {
                                                  "line": 87,
                                                  "column": 51
                                                },
                                                "end": {
                                                  "line": 87,
                                                  "column": 76
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 3315,
                                                "end": 3319,
                                                "loc": {
                                                  "start": {
                                                    "line": 87,
                                                    "column": 51
                                                  },
                                                  "end": {
                                                    "line": 87,
                                                    "column": 55
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 3320,
                                                "end": 3340,
                                                "loc": {
                                                  "start": {
                                                    "line": 87,
                                                    "column": 56
                                                  },
                                                  "end": {
                                                    "line": 87,
                                                    "column": 76
                                                  }
                                                },
                                                "name": "constraintExpression"
                                              },
                                              "computed": false
                                            },
                                            "kind": "init"
                                          },
                                          {
                                            "type": "Property",
                                            "start": 3342,
                                            "end": 3369,
                                            "loc": {
                                              "start": {
                                                "line": 87,
                                                "column": 78
                                              },
                                              "end": {
                                                "line": 87,
                                                "column": 105
                                              }
                                            },
                                            "method": false,
                                            "shorthand": false,
                                            "computed": false,
                                            "key": {
                                              "type": "Identifier",
                                              "start": 3342,
                                              "end": 3347,
                                              "loc": {
                                                "start": {
                                                  "line": 87,
                                                  "column": 78
                                                },
                                                "end": {
                                                  "line": 87,
                                                  "column": 83
                                                }
                                              },
                                              "name": "value"
                                            },
                                            "value": {
                                              "type": "MemberExpression",
                                              "start": 3349,
                                              "end": 3369,
                                              "loc": {
                                                "start": {
                                                  "line": 87,
                                                  "column": 85
                                                },
                                                "end": {
                                                  "line": 87,
                                                  "column": 105
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 3349,
                                                "end": 3353,
                                                "loc": {
                                                  "start": {
                                                    "line": 87,
                                                    "column": 85
                                                  },
                                                  "end": {
                                                    "line": 87,
                                                    "column": 89
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 3354,
                                                "end": 3369,
                                                "loc": {
                                                  "start": {
                                                    "line": 87,
                                                    "column": 90
                                                  },
                                                  "end": {
                                                    "line": 87,
                                                    "column": 105
                                                  }
                                                },
                                                "name": "constraintValue"
                                              },
                                              "computed": false
                                            },
                                            "kind": "init"
                                          },
                                          {
                                            "type": "Property",
                                            "start": 3371,
                                            "end": 3398,
                                            "loc": {
                                              "start": {
                                                "line": 87,
                                                "column": 107
                                              },
                                              "end": {
                                                "line": 87,
                                                "column": 134
                                              }
                                            },
                                            "method": false,
                                            "shorthand": false,
                                            "computed": false,
                                            "key": {
                                              "type": "Identifier",
                                              "start": 3371,
                                              "end": 3376,
                                              "loc": {
                                                "start": {
                                                  "line": 87,
                                                  "column": 107
                                                },
                                                "end": {
                                                  "line": 87,
                                                  "column": 112
                                                }
                                              },
                                              "name": "fixed"
                                            },
                                            "value": {
                                              "type": "MemberExpression",
                                              "start": 3378,
                                              "end": 3398,
                                              "loc": {
                                                "start": {
                                                  "line": 87,
                                                  "column": 114
                                                },
                                                "end": {
                                                  "line": 87,
                                                  "column": 134
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 3378,
                                                "end": 3382,
                                                "loc": {
                                                  "start": {
                                                    "line": 87,
                                                    "column": 114
                                                  },
                                                  "end": {
                                                    "line": 87,
                                                    "column": 118
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 3383,
                                                "end": 3398,
                                                "loc": {
                                                  "start": {
                                                    "line": 87,
                                                    "column": 119
                                                  },
                                                  "end": {
                                                    "line": 87,
                                                    "column": 134
                                                  }
                                                },
                                                "name": "constraintFixed"
                                              },
                                              "computed": false
                                            },
                                            "kind": "init"
                                          }
                                        ]
                                      }
                                    }
                                  ]
                                }
                              }
                            },
                            {
                              "type": "Property",
                              "start": 3416,
                              "end": 3543,
                              "loc": {
                                "start": {
                                  "line": 88,
                                  "column": 12
                                },
                                "end": {
                                  "line": 88,
                                  "column": 139
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 3420,
                                "end": 3430,
                                "loc": {
                                  "start": {
                                    "line": 88,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 88,
                                    "column": 26
                                  }
                                },
                                "name": "constraint"
                              },
                              "kind": "set",
                              "value": {
                                "type": "FunctionExpression",
                                "start": 3430,
                                "end": 3543,
                                "loc": {
                                  "start": {
                                    "line": 88,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 88,
                                    "column": 139
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": false,
                                "async": false,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "start": 3431,
                                    "end": 3432,
                                    "loc": {
                                      "start": {
                                        "line": 88,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 88,
                                        "column": 28
                                      }
                                    },
                                    "name": "c"
                                  }
                                ],
                                "body": {
                                  "type": "BlockStatement",
                                  "start": 3434,
                                  "end": 3543,
                                  "loc": {
                                    "start": {
                                      "line": 88,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 88,
                                      "column": 139
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 3436,
                                      "end": 3477,
                                      "loc": {
                                        "start": {
                                          "line": 88,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 88,
                                          "column": 73
                                        }
                                      },
                                      "expression": {
                                        "type": "AssignmentExpression",
                                        "start": 3436,
                                        "end": 3476,
                                        "loc": {
                                          "start": {
                                            "line": 88,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 88,
                                            "column": 72
                                          }
                                        },
                                        "operator": "=",
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 3436,
                                          "end": 3461,
                                          "loc": {
                                            "start": {
                                              "line": 88,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 88,
                                              "column": 57
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 3436,
                                            "end": 3440,
                                            "loc": {
                                              "start": {
                                                "line": 88,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 88,
                                                "column": 36
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 3441,
                                            "end": 3461,
                                            "loc": {
                                              "start": {
                                                "line": 88,
                                                "column": 37
                                              },
                                              "end": {
                                                "line": 88,
                                                "column": 57
                                              }
                                            },
                                            "name": "constraintExpression"
                                          },
                                          "computed": false
                                        },
                                        "right": {
                                          "type": "MemberExpression",
                                          "start": 3464,
                                          "end": 3476,
                                          "loc": {
                                            "start": {
                                              "line": 88,
                                              "column": 60
                                            },
                                            "end": {
                                              "line": 88,
                                              "column": 72
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 3464,
                                            "end": 3465,
                                            "loc": {
                                              "start": {
                                                "line": 88,
                                                "column": 60
                                              },
                                              "end": {
                                                "line": 88,
                                                "column": 61
                                              }
                                            },
                                            "name": "c"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 3466,
                                            "end": 3476,
                                            "loc": {
                                              "start": {
                                                "line": 88,
                                                "column": 62
                                              },
                                              "end": {
                                                "line": 88,
                                                "column": 72
                                              }
                                            },
                                            "name": "expression"
                                          },
                                          "computed": false
                                        }
                                      }
                                    },
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 3478,
                                      "end": 3509,
                                      "loc": {
                                        "start": {
                                          "line": 88,
                                          "column": 74
                                        },
                                        "end": {
                                          "line": 88,
                                          "column": 105
                                        }
                                      },
                                      "expression": {
                                        "type": "AssignmentExpression",
                                        "start": 3478,
                                        "end": 3508,
                                        "loc": {
                                          "start": {
                                            "line": 88,
                                            "column": 74
                                          },
                                          "end": {
                                            "line": 88,
                                            "column": 104
                                          }
                                        },
                                        "operator": "=",
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 3478,
                                          "end": 3498,
                                          "loc": {
                                            "start": {
                                              "line": 88,
                                              "column": 74
                                            },
                                            "end": {
                                              "line": 88,
                                              "column": 94
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 3478,
                                            "end": 3482,
                                            "loc": {
                                              "start": {
                                                "line": 88,
                                                "column": 74
                                              },
                                              "end": {
                                                "line": 88,
                                                "column": 78
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 3483,
                                            "end": 3498,
                                            "loc": {
                                              "start": {
                                                "line": 88,
                                                "column": 79
                                              },
                                              "end": {
                                                "line": 88,
                                                "column": 94
                                              }
                                            },
                                            "name": "constraintValue"
                                          },
                                          "computed": false
                                        },
                                        "right": {
                                          "type": "MemberExpression",
                                          "start": 3501,
                                          "end": 3508,
                                          "loc": {
                                            "start": {
                                              "line": 88,
                                              "column": 97
                                            },
                                            "end": {
                                              "line": 88,
                                              "column": 104
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 3501,
                                            "end": 3502,
                                            "loc": {
                                              "start": {
                                                "line": 88,
                                                "column": 97
                                              },
                                              "end": {
                                                "line": 88,
                                                "column": 98
                                              }
                                            },
                                            "name": "c"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 3503,
                                            "end": 3508,
                                            "loc": {
                                              "start": {
                                                "line": 88,
                                                "column": 99
                                              },
                                              "end": {
                                                "line": 88,
                                                "column": 104
                                              }
                                            },
                                            "name": "value"
                                          },
                                          "computed": false
                                        }
                                      }
                                    },
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 3510,
                                      "end": 3541,
                                      "loc": {
                                        "start": {
                                          "line": 88,
                                          "column": 106
                                        },
                                        "end": {
                                          "line": 88,
                                          "column": 137
                                        }
                                      },
                                      "expression": {
                                        "type": "AssignmentExpression",
                                        "start": 3510,
                                        "end": 3540,
                                        "loc": {
                                          "start": {
                                            "line": 88,
                                            "column": 106
                                          },
                                          "end": {
                                            "line": 88,
                                            "column": 136
                                          }
                                        },
                                        "operator": "=",
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 3510,
                                          "end": 3530,
                                          "loc": {
                                            "start": {
                                              "line": 88,
                                              "column": 106
                                            },
                                            "end": {
                                              "line": 88,
                                              "column": 126
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 3510,
                                            "end": 3514,
                                            "loc": {
                                              "start": {
                                                "line": 88,
                                                "column": 106
                                              },
                                              "end": {
                                                "line": 88,
                                                "column": 110
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 3515,
                                            "end": 3530,
                                            "loc": {
                                              "start": {
                                                "line": 88,
                                                "column": 111
                                              },
                                              "end": {
                                                "line": 88,
                                                "column": 126
                                              }
                                            },
                                            "name": "constraintFixed"
                                          },
                                          "computed": false
                                        },
                                        "right": {
                                          "type": "MemberExpression",
                                          "start": 3533,
                                          "end": 3540,
                                          "loc": {
                                            "start": {
                                              "line": 88,
                                              "column": 129
                                            },
                                            "end": {
                                              "line": 88,
                                              "column": 136
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 3533,
                                            "end": 3534,
                                            "loc": {
                                              "start": {
                                                "line": 88,
                                                "column": 129
                                              },
                                              "end": {
                                                "line": 88,
                                                "column": 130
                                              }
                                            },
                                            "name": "c"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 3535,
                                            "end": 3540,
                                            "loc": {
                                              "start": {
                                                "line": 88,
                                                "column": 131
                                              },
                                              "end": {
                                                "line": 88,
                                                "column": 136
                                              }
                                            },
                                            "name": "fixed"
                                          },
                                          "computed": false
                                        }
                                      }
                                    }
                                  ]
                                }
                              }
                            },
                            {
                              "type": "Property",
                              "start": 3557,
                              "end": 3588,
                              "loc": {
                                "start": {
                                  "line": 89,
                                  "column": 12
                                },
                                "end": {
                                  "line": 89,
                                  "column": 43
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 3557,
                                "end": 3573,
                                "loc": {
                                  "start": {
                                    "line": 89,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 89,
                                    "column": 28
                                  }
                                },
                                "name": "acceptConstraint"
                              },
                              "value": {
                                "type": "FunctionExpression",
                                "start": 3575,
                                "end": 3588,
                                "loc": {
                                  "start": {
                                    "line": 89,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 89,
                                    "column": 43
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": false,
                                "async": false,
                                "params": [],
                                "body": {
                                  "type": "BlockStatement",
                                  "start": 3586,
                                  "end": 3588,
                                  "loc": {
                                    "start": {
                                      "line": 89,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 89,
                                      "column": 43
                                    }
                                  },
                                  "body": []
                                }
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 3602,
                              "end": 3634,
                              "loc": {
                                "start": {
                                  "line": 90,
                                  "column": 12
                                },
                                "end": {
                                  "line": 90,
                                  "column": 44
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 3602,
                                "end": 3619,
                                "loc": {
                                  "start": {
                                    "line": 90,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 90,
                                    "column": 29
                                  }
                                },
                                "name": "declineConstraint"
                              },
                              "value": {
                                "type": "FunctionExpression",
                                "start": 3621,
                                "end": 3634,
                                "loc": {
                                  "start": {
                                    "line": 90,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 90,
                                    "column": 44
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": false,
                                "async": false,
                                "params": [],
                                "body": {
                                  "type": "BlockStatement",
                                  "start": 3632,
                                  "end": 3634,
                                  "loc": {
                                    "start": {
                                      "line": 90,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 90,
                                      "column": 44
                                    }
                                  },
                                  "body": []
                                }
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 3648,
                              "end": 3672,
                              "loc": {
                                "start": {
                                  "line": 91,
                                  "column": 12
                                },
                                "end": {
                                  "line": 91,
                                  "column": 36
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 3648,
                                "end": 3665,
                                "loc": {
                                  "start": {
                                    "line": 91,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 91,
                                    "column": 29
                                  }
                                },
                                "name": "_incrementalLevel"
                              },
                              "value": {
                                "type": "Literal",
                                "start": 3667,
                                "end": 3672,
                                "loc": {
                                  "start": {
                                    "line": 91,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 91,
                                    "column": 36
                                  }
                                },
                                "value": false,
                                "rawValue": false,
                                "raw": "false"
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 3686,
                              "end": 3703,
                              "loc": {
                                "start": {
                                  "line": 92,
                                  "column": 12
                                },
                                "end": {
                                  "line": 92,
                                  "column": 29
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 3686,
                                "end": 3699,
                                "loc": {
                                  "start": {
                                    "line": 92,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 92,
                                    "column": 25
                                  }
                                },
                                "name": "expressionSet"
                              },
                              "value": {
                                "type": "ArrayExpression",
                                "start": 3701,
                                "end": 3703,
                                "loc": {
                                  "start": {
                                    "line": 92,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 92,
                                    "column": 29
                                  }
                                },
                                "elements": []
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 3717,
                              "end": 3739,
                              "loc": {
                                "start": {
                                  "line": 93,
                                  "column": 12
                                },
                                "end": {
                                  "line": 93,
                                  "column": 34
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 3717,
                                "end": 3732,
                                "loc": {
                                  "start": {
                                    "line": 93,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 93,
                                    "column": 27
                                  }
                                },
                                "name": "isHiddenVisible"
                              },
                              "value": {
                                "type": "Literal",
                                "start": 3734,
                                "end": 3739,
                                "loc": {
                                  "start": {
                                    "line": 93,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 93,
                                    "column": 34
                                  }
                                },
                                "value": false,
                                "rawValue": false,
                                "raw": "false"
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 3753,
                              "end": 3798,
                              "loc": {
                                "start": {
                                  "line": 94,
                                  "column": 12
                                },
                                "end": {
                                  "line": 94,
                                  "column": 57
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 3753,
                                "end": 3777,
                                "loc": {
                                  "start": {
                                    "line": 94,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 94,
                                    "column": 36
                                  }
                                },
                                "name": "previousInteractionPoint"
                              },
                              "value": {
                                "type": "NewExpression",
                                "start": 3779,
                                "end": 3798,
                                "loc": {
                                  "start": {
                                    "line": 94,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 94,
                                    "column": 57
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 3783,
                                  "end": 3796,
                                  "loc": {
                                    "start": {
                                      "line": 94,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 94,
                                      "column": 55
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 3783,
                                    "end": 3788,
                                    "loc": {
                                      "start": {
                                        "line": 94,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 94,
                                        "column": 47
                                      }
                                    },
                                    "name": "THREE"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3789,
                                    "end": 3796,
                                    "loc": {
                                      "start": {
                                        "line": 94,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 94,
                                        "column": 55
                                      }
                                    },
                                    "name": "Vector3"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 3812,
                              "end": 3887,
                              "loc": {
                                "start": {
                                  "line": 95,
                                  "column": 12
                                },
                                "end": {
                                  "line": 95,
                                  "column": 87
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 3812,
                                "end": 3828,
                                "loc": {
                                  "start": {
                                    "line": 95,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 95,
                                    "column": 28
                                  }
                                },
                                "name": "interactionPoint"
                              },
                              "value": {
                                "type": "NewExpression",
                                "start": 3830,
                                "end": 3887,
                                "loc": {
                                  "start": {
                                    "line": 95,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 95,
                                    "column": 87
                                  }
                                },
                                "callee": {
                                  "type": "Identifier",
                                  "start": 3834,
                                  "end": 3848,
                                  "loc": {
                                    "start": {
                                      "line": 95,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 95,
                                      "column": 48
                                    }
                                  },
                                  "name": "CursorPosition"
                                },
                                "arguments": [
                                  {
                                    "type": "CallExpression",
                                    "start": 3849,
                                    "end": 3886,
                                    "loc": {
                                      "start": {
                                        "line": 95,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 95,
                                        "column": 86
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 3849,
                                      "end": 3880,
                                      "loc": {
                                        "start": {
                                          "line": 95,
                                          "column": 49
                                        },
                                        "end": {
                                          "line": 95,
                                          "column": 80
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 3849,
                                        "end": 3875,
                                        "loc": {
                                          "start": {
                                            "line": 95,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 95,
                                            "column": 75
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 3849,
                                          "end": 3853,
                                          "loc": {
                                            "start": {
                                              "line": 95,
                                              "column": 49
                                            },
                                            "end": {
                                              "line": 95,
                                              "column": 53
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 3854,
                                          "end": 3875,
                                          "loc": {
                                            "start": {
                                              "line": 95,
                                              "column": 54
                                            },
                                            "end": {
                                              "line": 95,
                                              "column": 75
                                            }
                                          },
                                          "name": "interactionPointMoved"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 3876,
                                        "end": 3880,
                                        "loc": {
                                          "start": {
                                            "line": 95,
                                            "column": 76
                                          },
                                          "end": {
                                            "line": 95,
                                            "column": 80
                                          }
                                        },
                                        "name": "bind"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "ThisExpression",
                                        "start": 3881,
                                        "end": 3885,
                                        "loc": {
                                          "start": {
                                            "line": 95,
                                            "column": 81
                                          },
                                          "end": {
                                            "line": 95,
                                            "column": 85
                                          }
                                        }
                                      }
                                    ]
                                  }
                                ]
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 3901,
                              "end": 3932,
                              "loc": {
                                "start": {
                                  "line": 96,
                                  "column": 12
                                },
                                "end": {
                                  "line": 96,
                                  "column": 43
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 3901,
                                "end": 3926,
                                "loc": {
                                  "start": {
                                    "line": 96,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 96,
                                    "column": 37
                                  }
                                },
                                "name": "autoconstraintIncremental"
                              },
                              "value": {
                                "type": "Literal",
                                "start": 3928,
                                "end": 3932,
                                "loc": {
                                  "start": {
                                    "line": 96,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 96,
                                    "column": 43
                                  }
                                },
                                "value": true,
                                "rawValue": true,
                                "raw": "true"
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 3946,
                              "end": 3961,
                              "loc": {
                                "start": {
                                  "line": 97,
                                  "column": 12
                                },
                                "end": {
                                  "line": 97,
                                  "column": 27
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 3946,
                                "end": 3957,
                                "loc": {
                                  "start": {
                                    "line": 97,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 97,
                                    "column": 23
                                  }
                                },
                                "name": "consoleText"
                              },
                              "value": {
                                "type": "Literal",
                                "start": 3959,
                                "end": 3961,
                                "loc": {
                                  "start": {
                                    "line": 97,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 97,
                                    "column": 27
                                  }
                                },
                                "value": "",
                                "rawValue": "",
                                "raw": "\"\""
                              },
                              "kind": "init"
                            }
                          ]
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " data for viewmodel",
                          "start": 3001,
                          "end": 3022,
                          "loc": {
                            "start": {
                              "line": 79,
                              "column": 8
                            },
                            "end": {
                              "line": 79,
                              "column": 29
                            }
                          },
                          "range": [
                            3001,
                            3022
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 3982,
                      "end": 4002,
                      "loc": {
                        "start": {
                          "line": 99,
                          "column": 8
                        },
                        "end": {
                          "line": 99,
                          "column": 28
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 3986,
                          "end": 4001,
                          "loc": {
                            "start": {
                              "line": 99,
                              "column": 12
                            },
                            "end": {
                              "line": 99,
                              "column": 27
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 3986,
                            "end": 3994,
                            "loc": {
                              "start": {
                                "line": 99,
                                "column": 12
                              },
                              "end": {
                                "line": 99,
                                "column": 20
                              }
                            },
                            "name": "sketcher"
                          },
                          "init": {
                            "type": "ThisExpression",
                            "start": 3997,
                            "end": 4001,
                            "loc": {
                              "start": {
                                "line": 99,
                                "column": 23
                              },
                              "end": {
                                "line": 99,
                                "column": 27
                              }
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4011,
                      "end": 4311,
                      "loc": {
                        "start": {
                          "line": 100,
                          "column": 8
                        },
                        "end": {
                          "line": 107,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 4011,
                        "end": 4310,
                        "loc": {
                          "start": {
                            "line": 100,
                            "column": 8
                          },
                          "end": {
                            "line": 107,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 4011,
                          "end": 4032,
                          "loc": {
                            "start": {
                              "line": 100,
                              "column": 8
                            },
                            "end": {
                              "line": 100,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 4011,
                            "end": 4017,
                            "loc": {
                              "start": {
                                "line": 100,
                                "column": 8
                              },
                              "end": {
                                "line": 100,
                                "column": 14
                              }
                            },
                            "name": "Object"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4018,
                            "end": 4032,
                            "loc": {
                              "start": {
                                "line": 100,
                                "column": 15
                              },
                              "end": {
                                "line": 100,
                                "column": 29
                              }
                            },
                            "name": "defineProperty"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 4033,
                            "end": 4047,
                            "loc": {
                              "start": {
                                "line": 100,
                                "column": 30
                              },
                              "end": {
                                "line": 100,
                                "column": 44
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 4033,
                              "end": 4037,
                              "loc": {
                                "start": {
                                  "line": 100,
                                  "column": 30
                                },
                                "end": {
                                  "line": 100,
                                  "column": 34
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4038,
                              "end": 4047,
                              "loc": {
                                "start": {
                                  "line": 100,
                                  "column": 35
                                },
                                "end": {
                                  "line": 100,
                                  "column": 44
                                }
                              },
                              "name": "modelData"
                            },
                            "computed": false
                          },
                          {
                            "type": "Literal",
                            "start": 4049,
                            "end": 4067,
                            "loc": {
                              "start": {
                                "line": 100,
                                "column": 46
                              },
                              "end": {
                                "line": 100,
                                "column": 64
                              }
                            },
                            "value": "incrementalLevel",
                            "rawValue": "incrementalLevel",
                            "raw": "'incrementalLevel'"
                          },
                          {
                            "type": "ObjectExpression",
                            "start": 4069,
                            "end": 4309,
                            "loc": {
                              "start": {
                                "line": 100,
                                "column": 66
                              },
                              "end": {
                                "line": 107,
                                "column": 9
                              }
                            },
                            "properties": [
                              {
                                "type": "Property",
                                "start": 4083,
                                "end": 4099,
                                "loc": {
                                  "start": {
                                    "line": 101,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 101,
                                    "column": 28
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 4083,
                                  "end": 4093,
                                  "loc": {
                                    "start": {
                                      "line": 101,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 101,
                                      "column": 22
                                    }
                                  },
                                  "name": "enumerable"
                                },
                                "value": {
                                  "type": "Literal",
                                  "start": 4095,
                                  "end": 4099,
                                  "loc": {
                                    "start": {
                                      "line": 101,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 101,
                                      "column": 28
                                    }
                                  },
                                  "value": true,
                                  "rawValue": true,
                                  "raw": "true"
                                },
                                "kind": "init"
                              },
                              {
                                "type": "Property",
                                "start": 4113,
                                "end": 4131,
                                "loc": {
                                  "start": {
                                    "line": 102,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 102,
                                    "column": 30
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 4113,
                                  "end": 4125,
                                  "loc": {
                                    "start": {
                                      "line": 102,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 102,
                                      "column": 24
                                    }
                                  },
                                  "name": "configurable"
                                },
                                "value": {
                                  "type": "Literal",
                                  "start": 4127,
                                  "end": 4131,
                                  "loc": {
                                    "start": {
                                      "line": 102,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 102,
                                      "column": 30
                                    }
                                  },
                                  "value": true,
                                  "rawValue": true,
                                  "raw": "true"
                                },
                                "kind": "init"
                              },
                              {
                                "type": "Property",
                                "start": 4145,
                                "end": 4195,
                                "loc": {
                                  "start": {
                                    "line": 103,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 103,
                                    "column": 62
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 4145,
                                  "end": 4148,
                                  "loc": {
                                    "start": {
                                      "line": 103,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 103,
                                      "column": 15
                                    }
                                  },
                                  "name": "get"
                                },
                                "value": {
                                  "type": "FunctionExpression",
                                  "start": 4150,
                                  "end": 4195,
                                  "loc": {
                                    "start": {
                                      "line": 103,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 103,
                                      "column": 62
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 4161,
                                    "end": 4195,
                                    "loc": {
                                      "start": {
                                        "line": 103,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 103,
                                        "column": 62
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ReturnStatement",
                                        "start": 4163,
                                        "end": 4193,
                                        "loc": {
                                          "start": {
                                            "line": 103,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 103,
                                            "column": 60
                                          }
                                        },
                                        "argument": {
                                          "type": "MemberExpression",
                                          "start": 4170,
                                          "end": 4192,
                                          "loc": {
                                            "start": {
                                              "line": 103,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 103,
                                              "column": 59
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 4170,
                                            "end": 4174,
                                            "loc": {
                                              "start": {
                                                "line": 103,
                                                "column": 37
                                              },
                                              "end": {
                                                "line": 103,
                                                "column": 41
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 4175,
                                            "end": 4192,
                                            "loc": {
                                              "start": {
                                                "line": 103,
                                                "column": 42
                                              },
                                              "end": {
                                                "line": 103,
                                                "column": 59
                                              }
                                            },
                                            "name": "_incrementalLevel"
                                          },
                                          "computed": false
                                        }
                                      }
                                    ]
                                  }
                                },
                                "kind": "init"
                              },
                              {
                                "type": "Property",
                                "start": 4209,
                                "end": 4298,
                                "loc": {
                                  "start": {
                                    "line": 104,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 106,
                                    "column": 13
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 4209,
                                  "end": 4212,
                                  "loc": {
                                    "start": {
                                      "line": 104,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 104,
                                      "column": 15
                                    }
                                  },
                                  "name": "set"
                                },
                                "value": {
                                  "type": "FunctionExpression",
                                  "start": 4214,
                                  "end": 4298,
                                  "loc": {
                                    "start": {
                                      "line": 104,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 106,
                                      "column": 13
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 4223,
                                      "end": 4228,
                                      "loc": {
                                        "start": {
                                          "line": 104,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 104,
                                          "column": 31
                                        }
                                      },
                                      "name": "value"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 4230,
                                    "end": 4298,
                                    "loc": {
                                      "start": {
                                        "line": 104,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 106,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 4248,
                                        "end": 4284,
                                        "loc": {
                                          "start": {
                                            "line": 105,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 105,
                                            "column": 52
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 4248,
                                          "end": 4283,
                                          "loc": {
                                            "start": {
                                              "line": 105,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 105,
                                              "column": 51
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 4248,
                                            "end": 4276,
                                            "loc": {
                                              "start": {
                                                "line": 105,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 105,
                                                "column": 44
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 4248,
                                              "end": 4256,
                                              "loc": {
                                                "start": {
                                                  "line": 105,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 105,
                                                  "column": 24
                                                }
                                              },
                                              "name": "sketcher"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 4257,
                                              "end": 4276,
                                              "loc": {
                                                "start": {
                                                  "line": 105,
                                                  "column": 25
                                                },
                                                "end": {
                                                  "line": 105,
                                                  "column": 44
                                                }
                                              },
                                              "name": "setIncrementalLevel"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 4277,
                                              "end": 4282,
                                              "loc": {
                                                "start": {
                                                  "line": 105,
                                                  "column": 45
                                                },
                                                "end": {
                                                  "line": 105,
                                                  "column": 50
                                                }
                                              },
                                              "name": "value"
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                },
                                "kind": "init"
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4320,
                      "end": 6008,
                      "loc": {
                        "start": {
                          "line": 108,
                          "column": 8
                        },
                        "end": {
                          "line": 141,
                          "column": 10
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 4320,
                        "end": 6007,
                        "loc": {
                          "start": {
                            "line": 108,
                            "column": 8
                          },
                          "end": {
                            "line": 141,
                            "column": 9
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 4320,
                          "end": 4337,
                          "loc": {
                            "start": {
                              "line": 108,
                              "column": 8
                            },
                            "end": {
                              "line": 108,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4320,
                            "end": 4324,
                            "loc": {
                              "start": {
                                "line": 108,
                                "column": 8
                              },
                              "end": {
                                "line": 108,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4325,
                            "end": 4337,
                            "loc": {
                              "start": {
                                "line": 108,
                                "column": 13
                              },
                              "end": {
                                "line": 108,
                                "column": 25
                              }
                            },
                            "name": "modelMethods"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "ObjectExpression",
                          "start": 4340,
                          "end": 6007,
                          "loc": {
                            "start": {
                              "line": 108,
                              "column": 28
                            },
                            "end": {
                              "line": 141,
                              "column": 9
                            }
                          },
                          "properties": [
                            {
                              "type": "Property",
                              "start": 4354,
                              "end": 4501,
                              "loc": {
                                "start": {
                                  "line": 109,
                                  "column": 12
                                },
                                "end": {
                                  "line": 111,
                                  "column": 13
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 4354,
                                "end": 4367,
                                "loc": {
                                  "start": {
                                    "line": 109,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 109,
                                    "column": 25
                                  }
                                },
                                "name": "addExpression"
                              },
                              "value": {
                                "type": "FunctionExpression",
                                "start": 4369,
                                "end": 4501,
                                "loc": {
                                  "start": {
                                    "line": 109,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 111,
                                    "column": 13
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": false,
                                "async": false,
                                "params": [],
                                "body": {
                                  "type": "BlockStatement",
                                  "start": 4380,
                                  "end": 4501,
                                  "loc": {
                                    "start": {
                                      "line": 109,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 111,
                                      "column": 13
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 4398,
                                      "end": 4487,
                                      "loc": {
                                        "start": {
                                          "line": 110,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 110,
                                          "column": 105
                                        }
                                      },
                                      "expression": {
                                        "type": "CallExpression",
                                        "start": 4398,
                                        "end": 4486,
                                        "loc": {
                                          "start": {
                                            "line": 110,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 110,
                                            "column": 104
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 4398,
                                          "end": 4421,
                                          "loc": {
                                            "start": {
                                              "line": 110,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 110,
                                              "column": 39
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 4398,
                                            "end": 4416,
                                            "loc": {
                                              "start": {
                                                "line": 110,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 110,
                                                "column": 34
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 4398,
                                              "end": 4402,
                                              "loc": {
                                                "start": {
                                                  "line": 110,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 110,
                                                  "column": 20
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 4403,
                                              "end": 4416,
                                              "loc": {
                                                "start": {
                                                  "line": 110,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 110,
                                                  "column": 34
                                                }
                                              },
                                              "name": "expressionSet"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 4417,
                                            "end": 4421,
                                            "loc": {
                                              "start": {
                                                "line": 110,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 110,
                                                "column": 39
                                              }
                                            },
                                            "name": "push"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ObjectExpression",
                                            "start": 4422,
                                            "end": 4485,
                                            "loc": {
                                              "start": {
                                                "line": 110,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 110,
                                                "column": 103
                                              }
                                            },
                                            "properties": [
                                              {
                                                "type": "Property",
                                                "start": 4423,
                                                "end": 4430,
                                                "loc": {
                                                  "start": {
                                                    "line": 110,
                                                    "column": 41
                                                  },
                                                  "end": {
                                                    "line": 110,
                                                    "column": 48
                                                  }
                                                },
                                                "method": false,
                                                "shorthand": false,
                                                "computed": false,
                                                "key": {
                                                  "type": "Identifier",
                                                  "start": 4423,
                                                  "end": 4427,
                                                  "loc": {
                                                    "start": {
                                                      "line": 110,
                                                      "column": 41
                                                    },
                                                    "end": {
                                                      "line": 110,
                                                      "column": 45
                                                    }
                                                  },
                                                  "name": "name"
                                                },
                                                "value": {
                                                  "type": "Literal",
                                                  "start": 4428,
                                                  "end": 4430,
                                                  "loc": {
                                                    "start": {
                                                      "line": 110,
                                                      "column": 46
                                                    },
                                                    "end": {
                                                      "line": 110,
                                                      "column": 48
                                                    }
                                                  },
                                                  "value": "",
                                                  "rawValue": "",
                                                  "raw": "''"
                                                },
                                                "kind": "init"
                                              },
                                              {
                                                "type": "Property",
                                                "start": 4432,
                                                "end": 4440,
                                                "loc": {
                                                  "start": {
                                                    "line": 110,
                                                    "column": 50
                                                  },
                                                  "end": {
                                                    "line": 110,
                                                    "column": 58
                                                  }
                                                },
                                                "method": false,
                                                "shorthand": false,
                                                "computed": false,
                                                "key": {
                                                  "type": "Identifier",
                                                  "start": 4432,
                                                  "end": 4437,
                                                  "loc": {
                                                    "start": {
                                                      "line": 110,
                                                      "column": 50
                                                    },
                                                    "end": {
                                                      "line": 110,
                                                      "column": 55
                                                    }
                                                  },
                                                  "name": "value"
                                                },
                                                "value": {
                                                  "type": "Literal",
                                                  "start": 4439,
                                                  "end": 4440,
                                                  "loc": {
                                                    "start": {
                                                      "line": 110,
                                                      "column": 57
                                                    },
                                                    "end": {
                                                      "line": 110,
                                                      "column": 58
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "kind": "init"
                                              },
                                              {
                                                "type": "Property",
                                                "start": 4442,
                                                "end": 4456,
                                                "loc": {
                                                  "start": {
                                                    "line": 110,
                                                    "column": 60
                                                  },
                                                  "end": {
                                                    "line": 110,
                                                    "column": 74
                                                  }
                                                },
                                                "method": false,
                                                "shorthand": false,
                                                "computed": false,
                                                "key": {
                                                  "type": "Identifier",
                                                  "start": 4442,
                                                  "end": 4452,
                                                  "loc": {
                                                    "start": {
                                                      "line": 110,
                                                      "column": 60
                                                    },
                                                    "end": {
                                                      "line": 110,
                                                      "column": 70
                                                    }
                                                  },
                                                  "name": "expression"
                                                },
                                                "value": {
                                                  "type": "Literal",
                                                  "start": 4454,
                                                  "end": 4456,
                                                  "loc": {
                                                    "start": {
                                                      "line": 110,
                                                      "column": 72
                                                    },
                                                    "end": {
                                                      "line": 110,
                                                      "column": 74
                                                    }
                                                  },
                                                  "value": "",
                                                  "rawValue": "",
                                                  "raw": "''"
                                                },
                                                "kind": "init"
                                              },
                                              {
                                                "type": "Property",
                                                "start": 4458,
                                                "end": 4469,
                                                "loc": {
                                                  "start": {
                                                    "line": 110,
                                                    "column": 76
                                                  },
                                                  "end": {
                                                    "line": 110,
                                                    "column": 87
                                                  }
                                                },
                                                "method": false,
                                                "shorthand": false,
                                                "computed": false,
                                                "key": {
                                                  "type": "Identifier",
                                                  "start": 4458,
                                                  "end": 4463,
                                                  "loc": {
                                                    "start": {
                                                      "line": 110,
                                                      "column": 76
                                                    },
                                                    "end": {
                                                      "line": 110,
                                                      "column": 81
                                                    }
                                                  },
                                                  "name": "fixed"
                                                },
                                                "value": {
                                                  "type": "Literal",
                                                  "start": 4465,
                                                  "end": 4469,
                                                  "loc": {
                                                    "start": {
                                                      "line": 110,
                                                      "column": 83
                                                    },
                                                    "end": {
                                                      "line": 110,
                                                      "column": 87
                                                    }
                                                  },
                                                  "value": true,
                                                  "rawValue": true,
                                                  "raw": "true"
                                                },
                                                "kind": "init"
                                              },
                                              {
                                                "type": "Property",
                                                "start": 4471,
                                                "end": 4484,
                                                "loc": {
                                                  "start": {
                                                    "line": 110,
                                                    "column": 89
                                                  },
                                                  "end": {
                                                    "line": 110,
                                                    "column": 102
                                                  }
                                                },
                                                "method": false,
                                                "shorthand": false,
                                                "computed": false,
                                                "key": {
                                                  "type": "Identifier",
                                                  "start": 4471,
                                                  "end": 4478,
                                                  "loc": {
                                                    "start": {
                                                      "line": 110,
                                                      "column": 89
                                                    },
                                                    "end": {
                                                      "line": 110,
                                                      "column": 96
                                                    }
                                                  },
                                                  "name": "visible"
                                                },
                                                "value": {
                                                  "type": "Literal",
                                                  "start": 4480,
                                                  "end": 4484,
                                                  "loc": {
                                                    "start": {
                                                      "line": 110,
                                                      "column": 98
                                                    },
                                                    "end": {
                                                      "line": 110,
                                                      "column": 102
                                                    }
                                                  },
                                                  "value": true,
                                                  "rawValue": true,
                                                  "raw": "true"
                                                },
                                                "kind": "init"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    }
                                  ]
                                }
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 4515,
                              "end": 4728,
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 12
                                },
                                "end": {
                                  "line": 116,
                                  "column": 13
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 4515,
                                "end": 4531,
                                "loc": {
                                  "start": {
                                    "line": 112,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 112,
                                    "column": 28
                                  }
                                },
                                "name": "removeExpression"
                              },
                              "value": {
                                "type": "FunctionExpression",
                                "start": 4533,
                                "end": 4728,
                                "loc": {
                                  "start": {
                                    "line": 112,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 116,
                                    "column": 13
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": false,
                                "async": false,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "start": 4542,
                                    "end": 4552,
                                    "loc": {
                                      "start": {
                                        "line": 112,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 112,
                                        "column": 49
                                      }
                                    },
                                    "name": "expression"
                                  }
                                ],
                                "body": {
                                  "type": "BlockStatement",
                                  "start": 4554,
                                  "end": 4728,
                                  "loc": {
                                    "start": {
                                      "line": 112,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 116,
                                      "column": 13
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "VariableDeclaration",
                                      "start": 4572,
                                      "end": 4623,
                                      "loc": {
                                        "start": {
                                          "line": 113,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 113,
                                          "column": 67
                                        }
                                      },
                                      "declarations": [
                                        {
                                          "type": "VariableDeclarator",
                                          "start": 4576,
                                          "end": 4622,
                                          "loc": {
                                            "start": {
                                              "line": 113,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 113,
                                              "column": 66
                                            }
                                          },
                                          "id": {
                                            "type": "Identifier",
                                            "start": 4576,
                                            "end": 4581,
                                            "loc": {
                                              "start": {
                                                "line": 113,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 113,
                                                "column": 25
                                              }
                                            },
                                            "name": "index"
                                          },
                                          "init": {
                                            "type": "CallExpression",
                                            "start": 4584,
                                            "end": 4622,
                                            "loc": {
                                              "start": {
                                                "line": 113,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 113,
                                                "column": 66
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 4584,
                                              "end": 4610,
                                              "loc": {
                                                "start": {
                                                  "line": 113,
                                                  "column": 28
                                                },
                                                "end": {
                                                  "line": 113,
                                                  "column": 54
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 4584,
                                                "end": 4602,
                                                "loc": {
                                                  "start": {
                                                    "line": 113,
                                                    "column": 28
                                                  },
                                                  "end": {
                                                    "line": 113,
                                                    "column": 46
                                                  }
                                                },
                                                "object": {
                                                  "type": "ThisExpression",
                                                  "start": 4584,
                                                  "end": 4588,
                                                  "loc": {
                                                    "start": {
                                                      "line": 113,
                                                      "column": 28
                                                    },
                                                    "end": {
                                                      "line": 113,
                                                      "column": 32
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 4589,
                                                  "end": 4602,
                                                  "loc": {
                                                    "start": {
                                                      "line": 113,
                                                      "column": 33
                                                    },
                                                    "end": {
                                                      "line": 113,
                                                      "column": 46
                                                    }
                                                  },
                                                  "name": "expressionSet"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 4603,
                                                "end": 4610,
                                                "loc": {
                                                  "start": {
                                                    "line": 113,
                                                    "column": 47
                                                  },
                                                  "end": {
                                                    "line": 113,
                                                    "column": 54
                                                  }
                                                },
                                                "name": "indexOf"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 4611,
                                                "end": 4621,
                                                "loc": {
                                                  "start": {
                                                    "line": 113,
                                                    "column": 55
                                                  },
                                                  "end": {
                                                    "line": 113,
                                                    "column": 65
                                                  }
                                                },
                                                "name": "expression"
                                              }
                                            ]
                                          }
                                        }
                                      ],
                                      "kind": "var"
                                    },
                                    {
                                      "type": "IfStatement",
                                      "start": 4640,
                                      "end": 4714,
                                      "loc": {
                                        "start": {
                                          "line": 114,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 115,
                                          "column": 56
                                        }
                                      },
                                      "test": {
                                        "type": "BinaryExpression",
                                        "start": 4644,
                                        "end": 4656,
                                        "loc": {
                                          "start": {
                                            "line": 114,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 114,
                                            "column": 32
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 4644,
                                          "end": 4649,
                                          "loc": {
                                            "start": {
                                              "line": 114,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 114,
                                              "column": 25
                                            }
                                          },
                                          "name": "index"
                                        },
                                        "operator": "!==",
                                        "right": {
                                          "type": "UnaryExpression",
                                          "start": 4654,
                                          "end": 4656,
                                          "loc": {
                                            "start": {
                                              "line": 114,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 114,
                                              "column": 32
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Literal",
                                            "start": 4655,
                                            "end": 4656,
                                            "loc": {
                                              "start": {
                                                "line": 114,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 114,
                                                "column": 32
                                              }
                                            },
                                            "value": 1,
                                            "rawValue": 1,
                                            "raw": "1"
                                          }
                                        }
                                      },
                                      "consequent": {
                                        "type": "ExpressionStatement",
                                        "start": 4678,
                                        "end": 4714,
                                        "loc": {
                                          "start": {
                                            "line": 115,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 115,
                                            "column": 56
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 4678,
                                          "end": 4713,
                                          "loc": {
                                            "start": {
                                              "line": 115,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 115,
                                              "column": 55
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 4678,
                                            "end": 4703,
                                            "loc": {
                                              "start": {
                                                "line": 115,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 115,
                                                "column": 45
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 4678,
                                              "end": 4696,
                                              "loc": {
                                                "start": {
                                                  "line": 115,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 115,
                                                  "column": 38
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 4678,
                                                "end": 4682,
                                                "loc": {
                                                  "start": {
                                                    "line": 115,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 115,
                                                    "column": 24
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 4683,
                                                "end": 4696,
                                                "loc": {
                                                  "start": {
                                                    "line": 115,
                                                    "column": 25
                                                  },
                                                  "end": {
                                                    "line": 115,
                                                    "column": 38
                                                  }
                                                },
                                                "name": "expressionSet"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 4697,
                                              "end": 4703,
                                              "loc": {
                                                "start": {
                                                  "line": 115,
                                                  "column": 39
                                                },
                                                "end": {
                                                  "line": 115,
                                                  "column": 45
                                                }
                                              },
                                              "name": "splice"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 4704,
                                              "end": 4709,
                                              "loc": {
                                                "start": {
                                                  "line": 115,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 115,
                                                  "column": 51
                                                }
                                              },
                                              "name": "index"
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 4711,
                                              "end": 4712,
                                              "loc": {
                                                "start": {
                                                  "line": 115,
                                                  "column": 53
                                                },
                                                "end": {
                                                  "line": 115,
                                                  "column": 54
                                                }
                                              },
                                              "value": 1,
                                              "rawValue": 1,
                                              "raw": "1"
                                            }
                                          ]
                                        }
                                      },
                                      "alternate": null
                                    }
                                  ]
                                }
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 4742,
                              "end": 4876,
                              "loc": {
                                "start": {
                                  "line": 117,
                                  "column": 12
                                },
                                "end": {
                                  "line": 119,
                                  "column": 13
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 4742,
                                "end": 4760,
                                "loc": {
                                  "start": {
                                    "line": 117,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 117,
                                    "column": 30
                                  }
                                },
                                "name": "resetExpressionSet"
                              },
                              "value": {
                                "type": "FunctionExpression",
                                "start": 4762,
                                "end": 4876,
                                "loc": {
                                  "start": {
                                    "line": 117,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 119,
                                    "column": 13
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": false,
                                "async": false,
                                "params": [],
                                "body": {
                                  "type": "BlockStatement",
                                  "start": 4773,
                                  "end": 4876,
                                  "loc": {
                                    "start": {
                                      "line": 117,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 119,
                                      "column": 13
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 4791,
                                      "end": 4862,
                                      "loc": {
                                        "start": {
                                          "line": 118,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 118,
                                          "column": 87
                                        }
                                      },
                                      "expression": {
                                        "type": "CallExpression",
                                        "start": 4791,
                                        "end": 4861,
                                        "loc": {
                                          "start": {
                                            "line": 118,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 118,
                                            "column": 86
                                          }
                                        },
                                        "callee": {
                                          "type": "Identifier",
                                          "start": 4791,
                                          "end": 4803,
                                          "loc": {
                                            "start": {
                                              "line": 118,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 118,
                                              "column": 28
                                            }
                                          },
                                          "name": "trackPromise"
                                        },
                                        "arguments": [
                                          {
                                            "type": "CallExpression",
                                            "start": 4804,
                                            "end": 4860,
                                            "loc": {
                                              "start": {
                                                "line": 118,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 118,
                                                "column": 85
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 4804,
                                              "end": 4843,
                                              "loc": {
                                                "start": {
                                                  "line": 118,
                                                  "column": 29
                                                },
                                                "end": {
                                                  "line": 118,
                                                  "column": 68
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 4804,
                                                "end": 4826,
                                                "loc": {
                                                  "start": {
                                                    "line": 118,
                                                    "column": 29
                                                  },
                                                  "end": {
                                                    "line": 118,
                                                    "column": 51
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 4804,
                                                  "end": 4812,
                                                  "loc": {
                                                    "start": {
                                                      "line": 118,
                                                      "column": 29
                                                    },
                                                    "end": {
                                                      "line": 118,
                                                      "column": 37
                                                    }
                                                  },
                                                  "name": "sketcher"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 4813,
                                                  "end": 4826,
                                                  "loc": {
                                                    "start": {
                                                      "line": 118,
                                                      "column": 38
                                                    },
                                                    "end": {
                                                      "line": 118,
                                                      "column": 51
                                                    }
                                                  },
                                                  "name": "currentSketch"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 4827,
                                                "end": 4843,
                                                "loc": {
                                                  "start": {
                                                    "line": 118,
                                                    "column": 52
                                                  },
                                                  "end": {
                                                    "line": 118,
                                                    "column": 68
                                                  }
                                                },
                                                "name": "updateFromServer"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "MemberExpression",
                                                "start": 4844,
                                                "end": 4859,
                                                "loc": {
                                                  "start": {
                                                    "line": 118,
                                                    "column": 69
                                                  },
                                                  "end": {
                                                    "line": 118,
                                                    "column": 84
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 4844,
                                                  "end": 4852,
                                                  "loc": {
                                                    "start": {
                                                      "line": 118,
                                                      "column": 69
                                                    },
                                                    "end": {
                                                      "line": 118,
                                                      "column": 77
                                                    }
                                                  },
                                                  "name": "sketcher"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 4853,
                                                  "end": 4859,
                                                  "loc": {
                                                    "start": {
                                                      "line": 118,
                                                      "column": 78
                                                    },
                                                    "end": {
                                                      "line": 118,
                                                      "column": 84
                                                    }
                                                  },
                                                  "name": "server"
                                                },
                                                "computed": false
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    }
                                  ]
                                }
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 4890,
                              "end": 5312,
                              "loc": {
                                "start": {
                                  "line": 120,
                                  "column": 12
                                },
                                "end": {
                                  "line": 126,
                                  "column": 13
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 4890,
                                "end": 4909,
                                "loc": {
                                  "start": {
                                    "line": 120,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 120,
                                    "column": 31
                                  }
                                },
                                "name": "submitExpressionSet"
                              },
                              "value": {
                                "type": "FunctionExpression",
                                "start": 4911,
                                "end": 5312,
                                "loc": {
                                  "start": {
                                    "line": 120,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 126,
                                    "column": 13
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": false,
                                "async": false,
                                "params": [],
                                "body": {
                                  "type": "BlockStatement",
                                  "start": 4922,
                                  "end": 5312,
                                  "loc": {
                                    "start": {
                                      "line": 120,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 126,
                                      "column": 13
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "VariableDeclaration",
                                      "start": 4940,
                                      "end": 5024,
                                      "loc": {
                                        "start": {
                                          "line": 121,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 121,
                                          "column": 100
                                        }
                                      },
                                      "declarations": [
                                        {
                                          "type": "VariableDeclarator",
                                          "start": 4944,
                                          "end": 5023,
                                          "loc": {
                                            "start": {
                                              "line": 121,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 121,
                                              "column": 99
                                            }
                                          },
                                          "id": {
                                            "type": "Identifier",
                                            "start": 4944,
                                            "end": 4951,
                                            "loc": {
                                              "start": {
                                                "line": 121,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 121,
                                                "column": 27
                                              }
                                            },
                                            "name": "esArray"
                                          },
                                          "init": {
                                            "type": "CallExpression",
                                            "start": 4954,
                                            "end": 5023,
                                            "loc": {
                                              "start": {
                                                "line": 121,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 121,
                                                "column": 99
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 4954,
                                              "end": 4976,
                                              "loc": {
                                                "start": {
                                                  "line": 121,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 121,
                                                  "column": 52
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 4954,
                                                "end": 4972,
                                                "loc": {
                                                  "start": {
                                                    "line": 121,
                                                    "column": 30
                                                  },
                                                  "end": {
                                                    "line": 121,
                                                    "column": 48
                                                  }
                                                },
                                                "object": {
                                                  "type": "ThisExpression",
                                                  "start": 4954,
                                                  "end": 4958,
                                                  "loc": {
                                                    "start": {
                                                      "line": 121,
                                                      "column": 30
                                                    },
                                                    "end": {
                                                      "line": 121,
                                                      "column": 34
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 4959,
                                                  "end": 4972,
                                                  "loc": {
                                                    "start": {
                                                      "line": 121,
                                                      "column": 35
                                                    },
                                                    "end": {
                                                      "line": 121,
                                                      "column": 48
                                                    }
                                                  },
                                                  "name": "expressionSet"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 4973,
                                                "end": 4976,
                                                "loc": {
                                                  "start": {
                                                    "line": 121,
                                                    "column": 49
                                                  },
                                                  "end": {
                                                    "line": 121,
                                                    "column": 52
                                                  }
                                                },
                                                "name": "map"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "ArrowFunctionExpression",
                                                "start": 4977,
                                                "end": 5022,
                                                "loc": {
                                                  "start": {
                                                    "line": 121,
                                                    "column": 53
                                                  },
                                                  "end": {
                                                    "line": 121,
                                                    "column": 98
                                                  }
                                                },
                                                "id": null,
                                                "generator": false,
                                                "expression": true,
                                                "async": false,
                                                "params": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 4977,
                                                    "end": 4978,
                                                    "loc": {
                                                      "start": {
                                                        "line": 121,
                                                        "column": 53
                                                      },
                                                      "end": {
                                                        "line": 121,
                                                        "column": 54
                                                      }
                                                    },
                                                    "name": "e"
                                                  }
                                                ],
                                                "body": {
                                                  "type": "ArrayExpression",
                                                  "start": 4982,
                                                  "end": 5022,
                                                  "loc": {
                                                    "start": {
                                                      "line": 121,
                                                      "column": 58
                                                    },
                                                    "end": {
                                                      "line": 121,
                                                      "column": 98
                                                    }
                                                  },
                                                  "elements": [
                                                    {
                                                      "type": "MemberExpression",
                                                      "start": 4983,
                                                      "end": 4989,
                                                      "loc": {
                                                        "start": {
                                                          "line": 121,
                                                          "column": 59
                                                        },
                                                        "end": {
                                                          "line": 121,
                                                          "column": 65
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 4983,
                                                        "end": 4984,
                                                        "loc": {
                                                          "start": {
                                                            "line": 121,
                                                            "column": 59
                                                          },
                                                          "end": {
                                                            "line": 121,
                                                            "column": 60
                                                          }
                                                        },
                                                        "name": "e"
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 4985,
                                                        "end": 4989,
                                                        "loc": {
                                                          "start": {
                                                            "line": 121,
                                                            "column": 61
                                                          },
                                                          "end": {
                                                            "line": 121,
                                                            "column": 65
                                                          }
                                                        },
                                                        "name": "name"
                                                      },
                                                      "computed": false
                                                    },
                                                    {
                                                      "type": "MemberExpression",
                                                      "start": 4991,
                                                      "end": 4998,
                                                      "loc": {
                                                        "start": {
                                                          "line": 121,
                                                          "column": 67
                                                        },
                                                        "end": {
                                                          "line": 121,
                                                          "column": 74
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 4991,
                                                        "end": 4992,
                                                        "loc": {
                                                          "start": {
                                                            "line": 121,
                                                            "column": 67
                                                          },
                                                          "end": {
                                                            "line": 121,
                                                            "column": 68
                                                          }
                                                        },
                                                        "name": "e"
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 4993,
                                                        "end": 4998,
                                                        "loc": {
                                                          "start": {
                                                            "line": 121,
                                                            "column": 69
                                                          },
                                                          "end": {
                                                            "line": 121,
                                                            "column": 74
                                                          }
                                                        },
                                                        "name": "value"
                                                      },
                                                      "computed": false
                                                    },
                                                    {
                                                      "type": "MemberExpression",
                                                      "start": 5000,
                                                      "end": 5012,
                                                      "loc": {
                                                        "start": {
                                                          "line": 121,
                                                          "column": 76
                                                        },
                                                        "end": {
                                                          "line": 121,
                                                          "column": 88
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 5000,
                                                        "end": 5001,
                                                        "loc": {
                                                          "start": {
                                                            "line": 121,
                                                            "column": 76
                                                          },
                                                          "end": {
                                                            "line": 121,
                                                            "column": 77
                                                          }
                                                        },
                                                        "name": "e"
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 5002,
                                                        "end": 5012,
                                                        "loc": {
                                                          "start": {
                                                            "line": 121,
                                                            "column": 78
                                                          },
                                                          "end": {
                                                            "line": 121,
                                                            "column": 88
                                                          }
                                                        },
                                                        "name": "expression"
                                                      },
                                                      "computed": false
                                                    },
                                                    {
                                                      "type": "MemberExpression",
                                                      "start": 5014,
                                                      "end": 5021,
                                                      "loc": {
                                                        "start": {
                                                          "line": 121,
                                                          "column": 90
                                                        },
                                                        "end": {
                                                          "line": 121,
                                                          "column": 97
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 5014,
                                                        "end": 5015,
                                                        "loc": {
                                                          "start": {
                                                            "line": 121,
                                                            "column": 90
                                                          },
                                                          "end": {
                                                            "line": 121,
                                                            "column": 91
                                                          }
                                                        },
                                                        "name": "e"
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 5016,
                                                        "end": 5021,
                                                        "loc": {
                                                          "start": {
                                                            "line": 121,
                                                            "column": 92
                                                          },
                                                          "end": {
                                                            "line": 121,
                                                            "column": 97
                                                          }
                                                        },
                                                        "name": "fixed"
                                                      },
                                                      "computed": false
                                                    }
                                                  ]
                                                }
                                              }
                                            ]
                                          }
                                        }
                                      ],
                                      "kind": "var"
                                    },
                                    {
                                      "type": "VariableDeclaration",
                                      "start": 5041,
                                      "end": 5141,
                                      "loc": {
                                        "start": {
                                          "line": 122,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 122,
                                          "column": 116
                                        }
                                      },
                                      "declarations": [
                                        {
                                          "type": "VariableDeclarator",
                                          "start": 5045,
                                          "end": 5140,
                                          "loc": {
                                            "start": {
                                              "line": 122,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 122,
                                              "column": 115
                                            }
                                          },
                                          "id": {
                                            "type": "Identifier",
                                            "start": 5045,
                                            "end": 5052,
                                            "loc": {
                                              "start": {
                                                "line": 122,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 122,
                                                "column": 27
                                              }
                                            },
                                            "name": "promise"
                                          },
                                          "init": {
                                            "type": "CallExpression",
                                            "start": 5055,
                                            "end": 5140,
                                            "loc": {
                                              "start": {
                                                "line": 122,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 122,
                                                "column": 115
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 5055,
                                              "end": 5123,
                                              "loc": {
                                                "start": {
                                                  "line": 122,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 122,
                                                  "column": 98
                                                }
                                              },
                                              "object": {
                                                "type": "CallExpression",
                                                "start": 5055,
                                                "end": 5115,
                                                "loc": {
                                                  "start": {
                                                    "line": 122,
                                                    "column": 30
                                                  },
                                                  "end": {
                                                    "line": 122,
                                                    "column": 90
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 5055,
                                                  "end": 5082,
                                                  "loc": {
                                                    "start": {
                                                      "line": 122,
                                                      "column": 30
                                                    },
                                                    "end": {
                                                      "line": 122,
                                                      "column": 57
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 5055,
                                                    "end": 5062,
                                                    "loc": {
                                                      "start": {
                                                        "line": 122,
                                                        "column": 30
                                                      },
                                                      "end": {
                                                        "line": 122,
                                                        "column": 37
                                                      }
                                                    },
                                                    "name": "Interop"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 5063,
                                                    "end": 5082,
                                                    "loc": {
                                                      "start": {
                                                        "line": 122,
                                                        "column": 38
                                                      },
                                                      "end": {
                                                        "line": 122,
                                                        "column": 57
                                                      }
                                                    },
                                                    "name": "UpdateExpressionSet"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "MemberExpression",
                                                    "start": 5083,
                                                    "end": 5105,
                                                    "loc": {
                                                      "start": {
                                                        "line": 122,
                                                        "column": 58
                                                      },
                                                      "end": {
                                                        "line": 122,
                                                        "column": 80
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 5083,
                                                      "end": 5091,
                                                      "loc": {
                                                        "start": {
                                                          "line": 122,
                                                          "column": 58
                                                        },
                                                        "end": {
                                                          "line": 122,
                                                          "column": 66
                                                        }
                                                      },
                                                      "name": "sketcher"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 5092,
                                                      "end": 5105,
                                                      "loc": {
                                                        "start": {
                                                          "line": 122,
                                                          "column": 67
                                                        },
                                                        "end": {
                                                          "line": 122,
                                                          "column": 80
                                                        }
                                                      },
                                                      "name": "currentSketch"
                                                    },
                                                    "computed": false
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 5107,
                                                    "end": 5114,
                                                    "loc": {
                                                      "start": {
                                                        "line": 122,
                                                        "column": 82
                                                      },
                                                      "end": {
                                                        "line": 122,
                                                        "column": 89
                                                      }
                                                    },
                                                    "name": "esArray"
                                                  }
                                                ]
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 5116,
                                                "end": 5123,
                                                "loc": {
                                                  "start": {
                                                    "line": 122,
                                                    "column": 91
                                                  },
                                                  "end": {
                                                    "line": 122,
                                                    "column": 98
                                                  }
                                                },
                                                "name": "execute"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "MemberExpression",
                                                "start": 5124,
                                                "end": 5139,
                                                "loc": {
                                                  "start": {
                                                    "line": 122,
                                                    "column": 99
                                                  },
                                                  "end": {
                                                    "line": 122,
                                                    "column": 114
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 5124,
                                                  "end": 5132,
                                                  "loc": {
                                                    "start": {
                                                      "line": 122,
                                                      "column": 99
                                                    },
                                                    "end": {
                                                      "line": 122,
                                                      "column": 107
                                                    }
                                                  },
                                                  "name": "sketcher"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 5133,
                                                  "end": 5139,
                                                  "loc": {
                                                    "start": {
                                                      "line": 122,
                                                      "column": 108
                                                    },
                                                    "end": {
                                                      "line": 122,
                                                      "column": 114
                                                    }
                                                  },
                                                  "name": "server"
                                                },
                                                "computed": false
                                              }
                                            ]
                                          }
                                        }
                                      ],
                                      "kind": "var"
                                    },
                                    {
                                      "type": "IfStatement",
                                      "start": 5158,
                                      "end": 5259,
                                      "loc": {
                                        "start": {
                                          "line": 123,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 124,
                                          "column": 74
                                        }
                                      },
                                      "test": {
                                        "type": "MemberExpression",
                                        "start": 5162,
                                        "end": 5183,
                                        "loc": {
                                          "start": {
                                            "line": 123,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 123,
                                            "column": 41
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 5162,
                                          "end": 5166,
                                          "loc": {
                                            "start": {
                                              "line": 123,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 123,
                                              "column": 24
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 5167,
                                          "end": 5183,
                                          "loc": {
                                            "start": {
                                              "line": 123,
                                              "column": 25
                                            },
                                            "end": {
                                              "line": 123,
                                              "column": 41
                                            }
                                          },
                                          "name": "incrementalLevel"
                                        },
                                        "computed": false
                                      },
                                      "consequent": {
                                        "type": "ExpressionStatement",
                                        "start": 5205,
                                        "end": 5259,
                                        "loc": {
                                          "start": {
                                            "line": 124,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 124,
                                            "column": 74
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 5205,
                                          "end": 5258,
                                          "loc": {
                                            "start": {
                                              "line": 124,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 124,
                                              "column": 73
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "Identifier",
                                            "start": 5205,
                                            "end": 5212,
                                            "loc": {
                                              "start": {
                                                "line": 124,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 124,
                                                "column": 27
                                              }
                                            },
                                            "name": "promise"
                                          },
                                          "right": {
                                            "type": "CallExpression",
                                            "start": 5215,
                                            "end": 5258,
                                            "loc": {
                                              "start": {
                                                "line": 124,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 124,
                                                "column": 73
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 5215,
                                              "end": 5227,
                                              "loc": {
                                                "start": {
                                                  "line": 124,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 124,
                                                  "column": 42
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 5215,
                                                "end": 5222,
                                                "loc": {
                                                  "start": {
                                                    "line": 124,
                                                    "column": 30
                                                  },
                                                  "end": {
                                                    "line": 124,
                                                    "column": 37
                                                  }
                                                },
                                                "name": "promise"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 5223,
                                                "end": 5227,
                                                "loc": {
                                                  "start": {
                                                    "line": 124,
                                                    "column": 38
                                                  },
                                                  "end": {
                                                    "line": 124,
                                                    "column": 42
                                                  }
                                                },
                                                "name": "then"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "ArrowFunctionExpression",
                                                "start": 5228,
                                                "end": 5257,
                                                "loc": {
                                                  "start": {
                                                    "line": 124,
                                                    "column": 43
                                                  },
                                                  "end": {
                                                    "line": 124,
                                                    "column": 72
                                                  }
                                                },
                                                "id": null,
                                                "generator": false,
                                                "expression": true,
                                                "async": false,
                                                "params": [],
                                                "body": {
                                                  "type": "CallExpression",
                                                  "start": 5234,
                                                  "end": 5257,
                                                  "loc": {
                                                    "start": {
                                                      "line": 124,
                                                      "column": 49
                                                    },
                                                    "end": {
                                                      "line": 124,
                                                      "column": 72
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "MemberExpression",
                                                    "start": 5234,
                                                    "end": 5255,
                                                    "loc": {
                                                      "start": {
                                                        "line": 124,
                                                        "column": 49
                                                      },
                                                      "end": {
                                                        "line": 124,
                                                        "column": 70
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "ThisExpression",
                                                      "start": 5234,
                                                      "end": 5238,
                                                      "loc": {
                                                        "start": {
                                                          "line": 124,
                                                          "column": 49
                                                        },
                                                        "end": {
                                                          "line": 124,
                                                          "column": 53
                                                        }
                                                      }
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 5239,
                                                      "end": 5255,
                                                      "loc": {
                                                        "start": {
                                                          "line": 124,
                                                          "column": 54
                                                        },
                                                        "end": {
                                                          "line": 124,
                                                          "column": 70
                                                        }
                                                      },
                                                      "name": "solveConstraints"
                                                    },
                                                    "computed": false
                                                  },
                                                  "arguments": []
                                                }
                                              }
                                            ]
                                          }
                                        }
                                      },
                                      "alternate": null
                                    },
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 5276,
                                      "end": 5298,
                                      "loc": {
                                        "start": {
                                          "line": 125,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 125,
                                          "column": 38
                                        }
                                      },
                                      "expression": {
                                        "type": "CallExpression",
                                        "start": 5276,
                                        "end": 5297,
                                        "loc": {
                                          "start": {
                                            "line": 125,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 125,
                                            "column": 37
                                          }
                                        },
                                        "callee": {
                                          "type": "Identifier",
                                          "start": 5276,
                                          "end": 5288,
                                          "loc": {
                                            "start": {
                                              "line": 125,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 125,
                                              "column": 28
                                            }
                                          },
                                          "name": "trackPromise"
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 5289,
                                            "end": 5296,
                                            "loc": {
                                              "start": {
                                                "line": 125,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 125,
                                                "column": 36
                                              }
                                            },
                                            "name": "promise"
                                          }
                                        ]
                                      }
                                    }
                                  ]
                                }
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 5326,
                              "end": 5364,
                              "loc": {
                                "start": {
                                  "line": 127,
                                  "column": 12
                                },
                                "end": {
                                  "line": 127,
                                  "column": 50
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 5326,
                                "end": 5336,
                                "loc": {
                                  "start": {
                                    "line": 127,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 127,
                                    "column": 22
                                  }
                                },
                                "name": "chooseTool"
                              },
                              "value": {
                                "type": "CallExpression",
                                "start": 5338,
                                "end": 5364,
                                "loc": {
                                  "start": {
                                    "line": 127,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 127,
                                    "column": 50
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 5338,
                                  "end": 5358,
                                  "loc": {
                                    "start": {
                                      "line": 127,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 127,
                                      "column": 44
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 5338,
                                    "end": 5353,
                                    "loc": {
                                      "start": {
                                        "line": 127,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 127,
                                        "column": 39
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 5338,
                                      "end": 5342,
                                      "loc": {
                                        "start": {
                                          "line": 127,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 127,
                                          "column": 28
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5343,
                                      "end": 5353,
                                      "loc": {
                                        "start": {
                                          "line": 127,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 127,
                                          "column": 39
                                        }
                                      },
                                      "name": "chooseTool"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5354,
                                    "end": 5358,
                                    "loc": {
                                      "start": {
                                        "line": 127,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 127,
                                        "column": 44
                                      }
                                    },
                                    "name": "bind"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "ThisExpression",
                                    "start": 5359,
                                    "end": 5363,
                                    "loc": {
                                      "start": {
                                        "line": 127,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 127,
                                        "column": 49
                                      }
                                    }
                                  }
                                ]
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 5378,
                              "end": 5424,
                              "loc": {
                                "start": {
                                  "line": 128,
                                  "column": 12
                                },
                                "end": {
                                  "line": 128,
                                  "column": 58
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 5378,
                                "end": 5392,
                                "loc": {
                                  "start": {
                                    "line": 128,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 128,
                                    "column": 26
                                  }
                                },
                                "name": "deselectSketch"
                              },
                              "value": {
                                "type": "CallExpression",
                                "start": 5394,
                                "end": 5424,
                                "loc": {
                                  "start": {
                                    "line": 128,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 128,
                                    "column": 58
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 5394,
                                  "end": 5418,
                                  "loc": {
                                    "start": {
                                      "line": 128,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 128,
                                      "column": 52
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 5394,
                                    "end": 5413,
                                    "loc": {
                                      "start": {
                                        "line": 128,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 128,
                                        "column": 47
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 5394,
                                      "end": 5398,
                                      "loc": {
                                        "start": {
                                          "line": 128,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 128,
                                          "column": 32
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5399,
                                      "end": 5413,
                                      "loc": {
                                        "start": {
                                          "line": 128,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 128,
                                          "column": 47
                                        }
                                      },
                                      "name": "deselectSketch"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5414,
                                    "end": 5418,
                                    "loc": {
                                      "start": {
                                        "line": 128,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 128,
                                        "column": 52
                                      }
                                    },
                                    "name": "bind"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "ThisExpression",
                                    "start": 5419,
                                    "end": 5423,
                                    "loc": {
                                      "start": {
                                        "line": 128,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 128,
                                        "column": 57
                                      }
                                    }
                                  }
                                ]
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 5438,
                              "end": 5480,
                              "loc": {
                                "start": {
                                  "line": 129,
                                  "column": 12
                                },
                                "end": {
                                  "line": 129,
                                  "column": 54
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 5438,
                                "end": 5450,
                                "loc": {
                                  "start": {
                                    "line": 129,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 129,
                                    "column": 24
                                  }
                                },
                                "name": "deleteSketch"
                              },
                              "value": {
                                "type": "CallExpression",
                                "start": 5452,
                                "end": 5480,
                                "loc": {
                                  "start": {
                                    "line": 129,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 129,
                                    "column": 54
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 5452,
                                  "end": 5474,
                                  "loc": {
                                    "start": {
                                      "line": 129,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 129,
                                      "column": 48
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 5452,
                                    "end": 5469,
                                    "loc": {
                                      "start": {
                                        "line": 129,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 129,
                                        "column": 43
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 5452,
                                      "end": 5456,
                                      "loc": {
                                        "start": {
                                          "line": 129,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 129,
                                          "column": 30
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5457,
                                      "end": 5469,
                                      "loc": {
                                        "start": {
                                          "line": 129,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 129,
                                          "column": 43
                                        }
                                      },
                                      "name": "deleteSketch"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5470,
                                    "end": 5474,
                                    "loc": {
                                      "start": {
                                        "line": 129,
                                        "column": 44
                                      },
                                      "end": {
                                        "line": 129,
                                        "column": 48
                                      }
                                    },
                                    "name": "bind"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "ThisExpression",
                                    "start": 5475,
                                    "end": 5479,
                                    "loc": {
                                      "start": {
                                        "line": 129,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 129,
                                        "column": 53
                                      }
                                    }
                                  }
                                ]
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 5494,
                              "end": 5522,
                              "loc": {
                                "start": {
                                  "line": 130,
                                  "column": 12
                                },
                                "end": {
                                  "line": 130,
                                  "column": 40
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 5494,
                                "end": 5499,
                                "loc": {
                                  "start": {
                                    "line": 130,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 130,
                                    "column": 17
                                  }
                                },
                                "name": "click"
                              },
                              "value": {
                                "type": "CallExpression",
                                "start": 5501,
                                "end": 5522,
                                "loc": {
                                  "start": {
                                    "line": 130,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 130,
                                    "column": 40
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 5501,
                                  "end": 5516,
                                  "loc": {
                                    "start": {
                                      "line": 130,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 130,
                                      "column": 34
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 5501,
                                    "end": 5511,
                                    "loc": {
                                      "start": {
                                        "line": 130,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 130,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 5501,
                                      "end": 5505,
                                      "loc": {
                                        "start": {
                                          "line": 130,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 130,
                                          "column": 23
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5506,
                                      "end": 5511,
                                      "loc": {
                                        "start": {
                                          "line": 130,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 130,
                                          "column": 29
                                        }
                                      },
                                      "name": "click"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5512,
                                    "end": 5516,
                                    "loc": {
                                      "start": {
                                        "line": 130,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 130,
                                        "column": 34
                                      }
                                    },
                                    "name": "bind"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "ThisExpression",
                                    "start": 5517,
                                    "end": 5521,
                                    "loc": {
                                      "start": {
                                        "line": 130,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 130,
                                        "column": 39
                                      }
                                    }
                                  }
                                ]
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 5536,
                              "end": 5562,
                              "loc": {
                                "start": {
                                  "line": 131,
                                  "column": 12
                                },
                                "end": {
                                  "line": 131,
                                  "column": 38
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 5536,
                                "end": 5540,
                                "loc": {
                                  "start": {
                                    "line": 131,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 131,
                                    "column": 16
                                  }
                                },
                                "name": "undo"
                              },
                              "value": {
                                "type": "CallExpression",
                                "start": 5542,
                                "end": 5562,
                                "loc": {
                                  "start": {
                                    "line": 131,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 131,
                                    "column": 38
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 5542,
                                  "end": 5556,
                                  "loc": {
                                    "start": {
                                      "line": 131,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 131,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 5542,
                                    "end": 5551,
                                    "loc": {
                                      "start": {
                                        "line": 131,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 131,
                                        "column": 27
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 5542,
                                      "end": 5546,
                                      "loc": {
                                        "start": {
                                          "line": 131,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 131,
                                          "column": 22
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5547,
                                      "end": 5551,
                                      "loc": {
                                        "start": {
                                          "line": 131,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 131,
                                          "column": 27
                                        }
                                      },
                                      "name": "undo"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5552,
                                    "end": 5556,
                                    "loc": {
                                      "start": {
                                        "line": 131,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 131,
                                        "column": 32
                                      }
                                    },
                                    "name": "bind"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "ThisExpression",
                                    "start": 5557,
                                    "end": 5561,
                                    "loc": {
                                      "start": {
                                        "line": 131,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 131,
                                        "column": 37
                                      }
                                    }
                                  }
                                ]
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 5576,
                              "end": 5602,
                              "loc": {
                                "start": {
                                  "line": 132,
                                  "column": 12
                                },
                                "end": {
                                  "line": 132,
                                  "column": 38
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 5576,
                                "end": 5580,
                                "loc": {
                                  "start": {
                                    "line": 132,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 132,
                                    "column": 16
                                  }
                                },
                                "name": "redo"
                              },
                              "value": {
                                "type": "CallExpression",
                                "start": 5582,
                                "end": 5602,
                                "loc": {
                                  "start": {
                                    "line": 132,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 132,
                                    "column": 38
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 5582,
                                  "end": 5596,
                                  "loc": {
                                    "start": {
                                      "line": 132,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 132,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 5582,
                                    "end": 5591,
                                    "loc": {
                                      "start": {
                                        "line": 132,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 132,
                                        "column": 27
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 5582,
                                      "end": 5586,
                                      "loc": {
                                        "start": {
                                          "line": 132,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 132,
                                          "column": 22
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5587,
                                      "end": 5591,
                                      "loc": {
                                        "start": {
                                          "line": 132,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 132,
                                          "column": 27
                                        }
                                      },
                                      "name": "redo"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5592,
                                    "end": 5596,
                                    "loc": {
                                      "start": {
                                        "line": 132,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 132,
                                        "column": 32
                                      }
                                    },
                                    "name": "bind"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "ThisExpression",
                                    "start": 5597,
                                    "end": 5601,
                                    "loc": {
                                      "start": {
                                        "line": 132,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 132,
                                        "column": 37
                                      }
                                    }
                                  }
                                ]
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 5616,
                              "end": 5666,
                              "loc": {
                                "start": {
                                  "line": 133,
                                  "column": 12
                                },
                                "end": {
                                  "line": 133,
                                  "column": 62
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 5616,
                                "end": 5632,
                                "loc": {
                                  "start": {
                                    "line": 133,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 133,
                                    "column": 28
                                  }
                                },
                                "name": "solveConstraints"
                              },
                              "value": {
                                "type": "CallExpression",
                                "start": 5634,
                                "end": 5666,
                                "loc": {
                                  "start": {
                                    "line": 133,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 133,
                                    "column": 62
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 5634,
                                  "end": 5660,
                                  "loc": {
                                    "start": {
                                      "line": 133,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 133,
                                      "column": 56
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 5634,
                                    "end": 5655,
                                    "loc": {
                                      "start": {
                                        "line": 133,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 133,
                                        "column": 51
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 5634,
                                      "end": 5638,
                                      "loc": {
                                        "start": {
                                          "line": 133,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 133,
                                          "column": 34
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5639,
                                      "end": 5655,
                                      "loc": {
                                        "start": {
                                          "line": 133,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 133,
                                          "column": 51
                                        }
                                      },
                                      "name": "solveConstraints"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5656,
                                    "end": 5660,
                                    "loc": {
                                      "start": {
                                        "line": 133,
                                        "column": 52
                                      },
                                      "end": {
                                        "line": 133,
                                        "column": 56
                                      }
                                    },
                                    "name": "bind"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "ThisExpression",
                                    "start": 5661,
                                    "end": 5665,
                                    "loc": {
                                      "start": {
                                        "line": 133,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 133,
                                        "column": 61
                                      }
                                    }
                                  }
                                ]
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 5680,
                              "end": 5732,
                              "loc": {
                                "start": {
                                  "line": 134,
                                  "column": 12
                                },
                                "end": {
                                  "line": 134,
                                  "column": 64
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 5680,
                                "end": 5697,
                                "loc": {
                                  "start": {
                                    "line": 134,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 134,
                                    "column": 29
                                  }
                                },
                                "name": "autoconstraintAll"
                              },
                              "value": {
                                "type": "CallExpression",
                                "start": 5699,
                                "end": 5732,
                                "loc": {
                                  "start": {
                                    "line": 134,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 134,
                                    "column": 64
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 5699,
                                  "end": 5726,
                                  "loc": {
                                    "start": {
                                      "line": 134,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 134,
                                      "column": 58
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 5699,
                                    "end": 5721,
                                    "loc": {
                                      "start": {
                                        "line": 134,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 134,
                                        "column": 53
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 5699,
                                      "end": 5703,
                                      "loc": {
                                        "start": {
                                          "line": 134,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 134,
                                          "column": 35
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5704,
                                      "end": 5721,
                                      "loc": {
                                        "start": {
                                          "line": 134,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 134,
                                          "column": 53
                                        }
                                      },
                                      "name": "autoconstraintAll"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5722,
                                    "end": 5726,
                                    "loc": {
                                      "start": {
                                        "line": 134,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 134,
                                        "column": 58
                                      }
                                    },
                                    "name": "bind"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "ThisExpression",
                                    "start": 5727,
                                    "end": 5731,
                                    "loc": {
                                      "start": {
                                        "line": 134,
                                        "column": 59
                                      },
                                      "end": {
                                        "line": 134,
                                        "column": 63
                                      }
                                    }
                                  }
                                ]
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 5746,
                              "end": 5996,
                              "loc": {
                                "start": {
                                  "line": 135,
                                  "column": 12
                                },
                                "end": {
                                  "line": 140,
                                  "column": 13
                                }
                              },
                              "method": true,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 5746,
                                "end": 5760,
                                "loc": {
                                  "start": {
                                    "line": 135,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 135,
                                    "column": 26
                                  }
                                },
                                "name": "consoleExecute"
                              },
                              "kind": "init",
                              "value": {
                                "type": "FunctionExpression",
                                "start": 5760,
                                "end": 5996,
                                "loc": {
                                  "start": {
                                    "line": 135,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 140,
                                    "column": 13
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": false,
                                "async": false,
                                "params": [],
                                "body": {
                                  "type": "BlockStatement",
                                  "start": 5763,
                                  "end": 5996,
                                  "loc": {
                                    "start": {
                                      "line": 135,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 140,
                                      "column": 13
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "VariableDeclaration",
                                      "start": 5781,
                                      "end": 5808,
                                      "loc": {
                                        "start": {
                                          "line": 136,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 136,
                                          "column": 43
                                        }
                                      },
                                      "declarations": [
                                        {
                                          "type": "VariableDeclarator",
                                          "start": 5785,
                                          "end": 5807,
                                          "loc": {
                                            "start": {
                                              "line": 136,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 136,
                                              "column": 42
                                            }
                                          },
                                          "id": {
                                            "type": "Identifier",
                                            "start": 5785,
                                            "end": 5788,
                                            "loc": {
                                              "start": {
                                                "line": 136,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 136,
                                                "column": 23
                                              }
                                            },
                                            "name": "cmd"
                                          },
                                          "init": {
                                            "type": "MemberExpression",
                                            "start": 5791,
                                            "end": 5807,
                                            "loc": {
                                              "start": {
                                                "line": 136,
                                                "column": 26
                                              },
                                              "end": {
                                                "line": 136,
                                                "column": 42
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 5791,
                                              "end": 5795,
                                              "loc": {
                                                "start": {
                                                  "line": 136,
                                                  "column": 26
                                                },
                                                "end": {
                                                  "line": 136,
                                                  "column": 30
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 5796,
                                              "end": 5807,
                                              "loc": {
                                                "start": {
                                                  "line": 136,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 136,
                                                  "column": 42
                                                }
                                              },
                                              "name": "consoleText"
                                            },
                                            "computed": false
                                          }
                                        }
                                      ],
                                      "kind": "let"
                                    },
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 5825,
                                      "end": 5847,
                                      "loc": {
                                        "start": {
                                          "line": 137,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 137,
                                          "column": 38
                                        }
                                      },
                                      "expression": {
                                        "type": "AssignmentExpression",
                                        "start": 5825,
                                        "end": 5846,
                                        "loc": {
                                          "start": {
                                            "line": 137,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 137,
                                            "column": 37
                                          }
                                        },
                                        "operator": "=",
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 5825,
                                          "end": 5841,
                                          "loc": {
                                            "start": {
                                              "line": 137,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 137,
                                              "column": 32
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 5825,
                                            "end": 5829,
                                            "loc": {
                                              "start": {
                                                "line": 137,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 137,
                                                "column": 20
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 5830,
                                            "end": 5841,
                                            "loc": {
                                              "start": {
                                                "line": 137,
                                                "column": 21
                                              },
                                              "end": {
                                                "line": 137,
                                                "column": 32
                                              }
                                            },
                                            "name": "consoleText"
                                          },
                                          "computed": false
                                        },
                                        "right": {
                                          "type": "Literal",
                                          "start": 5844,
                                          "end": 5846,
                                          "loc": {
                                            "start": {
                                              "line": 137,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 137,
                                              "column": 37
                                            }
                                          },
                                          "value": "",
                                          "rawValue": "",
                                          "raw": "\"\""
                                        }
                                      }
                                    },
                                    {
                                      "type": "IfStatement",
                                      "start": 5864,
                                      "end": 5982,
                                      "loc": {
                                        "start": {
                                          "line": 138,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 139,
                                          "column": 80
                                        }
                                      },
                                      "test": {
                                        "type": "MemberExpression",
                                        "start": 5868,
                                        "end": 5900,
                                        "loc": {
                                          "start": {
                                            "line": 138,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 138,
                                            "column": 52
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 5868,
                                          "end": 5876,
                                          "loc": {
                                            "start": {
                                              "line": 138,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 138,
                                              "column": 28
                                            }
                                          },
                                          "name": "sketcher"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 5877,
                                          "end": 5900,
                                          "loc": {
                                            "start": {
                                              "line": 138,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 138,
                                              "column": 52
                                            }
                                          },
                                          "name": "__sketchControlsHandler"
                                        },
                                        "computed": false
                                      },
                                      "consequent": {
                                        "type": "ReturnStatement",
                                        "start": 5922,
                                        "end": 5982,
                                        "loc": {
                                          "start": {
                                            "line": 139,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 139,
                                            "column": 80
                                          }
                                        },
                                        "argument": {
                                          "type": "CallExpression",
                                          "start": 5929,
                                          "end": 5981,
                                          "loc": {
                                            "start": {
                                              "line": 139,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 139,
                                              "column": 79
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 5929,
                                            "end": 5976,
                                            "loc": {
                                              "start": {
                                                "line": 139,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 139,
                                                "column": 74
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 5929,
                                              "end": 5961,
                                              "loc": {
                                                "start": {
                                                  "line": 139,
                                                  "column": 27
                                                },
                                                "end": {
                                                  "line": 139,
                                                  "column": 59
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 5929,
                                                "end": 5937,
                                                "loc": {
                                                  "start": {
                                                    "line": 139,
                                                    "column": 27
                                                  },
                                                  "end": {
                                                    "line": 139,
                                                    "column": 35
                                                  }
                                                },
                                                "name": "sketcher"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 5938,
                                                "end": 5961,
                                                "loc": {
                                                  "start": {
                                                    "line": 139,
                                                    "column": 36
                                                  },
                                                  "end": {
                                                    "line": 139,
                                                    "column": 59
                                                  }
                                                },
                                                "name": "__sketchControlsHandler"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 5962,
                                              "end": 5976,
                                              "loc": {
                                                "start": {
                                                  "line": 139,
                                                  "column": 60
                                                },
                                                "end": {
                                                  "line": 139,
                                                  "column": 74
                                                }
                                              },
                                              "name": "consoleExecute"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 5977,
                                              "end": 5980,
                                              "loc": {
                                                "start": {
                                                  "line": 139,
                                                  "column": 75
                                                },
                                                "end": {
                                                  "line": 139,
                                                  "column": 78
                                                }
                                              },
                                              "name": "cmd"
                                            }
                                          ]
                                        }
                                      },
                                      "alternate": null
                                    }
                                  ]
                                }
                              }
                            }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 6020,
              "end": 6077,
              "loc": {
                "start": {
                  "line": 144,
                  "column": 4
                },
                "end": {
                  "line": 146,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 6020,
                "end": 6027,
                "loc": {
                  "start": {
                    "line": 144,
                    "column": 4
                  },
                  "end": {
                    "line": 144,
                    "column": 11
                  }
                },
                "name": "refresh"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 6027,
                "end": 6077,
                "loc": {
                  "start": {
                    "line": 144,
                    "column": 11
                  },
                  "end": {
                    "line": 146,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 6030,
                  "end": 6077,
                  "loc": {
                    "start": {
                      "line": 144,
                      "column": 14
                    },
                    "end": {
                      "line": 146,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 6040,
                      "end": 6071,
                      "loc": {
                        "start": {
                          "line": 145,
                          "column": 8
                        },
                        "end": {
                          "line": 145,
                          "column": 39
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6040,
                        "end": 6070,
                        "loc": {
                          "start": {
                            "line": 145,
                            "column": 8
                          },
                          "end": {
                            "line": 145,
                            "column": 38
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6040,
                          "end": 6068,
                          "loc": {
                            "start": {
                              "line": 145,
                              "column": 8
                            },
                            "end": {
                              "line": 145,
                              "column": 36
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 6040,
                            "end": 6057,
                            "loc": {
                              "start": {
                                "line": 145,
                                "column": 8
                              },
                              "end": {
                                "line": 145,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 6040,
                              "end": 6044,
                              "loc": {
                                "start": {
                                  "line": 145,
                                  "column": 8
                                },
                                "end": {
                                  "line": 145,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6045,
                              "end": 6057,
                              "loc": {
                                "start": {
                                  "line": 145,
                                  "column": 13
                                },
                                "end": {
                                  "line": 145,
                                  "column": 25
                                }
                              },
                              "name": "__parentView"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6058,
                            "end": 6068,
                            "loc": {
                              "start": {
                                "line": 145,
                                "column": 26
                              },
                              "end": {
                                "line": 145,
                                "column": 36
                              }
                            },
                            "name": "invalidate"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": "always called when someone clicks on a sketch's area",
                  "start": 6083,
                  "end": 6137,
                  "loc": {
                    "start": {
                      "line": 148,
                      "column": 4
                    },
                    "end": {
                      "line": 148,
                      "column": 58
                    }
                  },
                  "range": [
                    6083,
                    6137
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 6142,
              "end": 6493,
              "loc": {
                "start": {
                  "line": 149,
                  "column": 4
                },
                "end": {
                  "line": 159,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 6148,
                "end": 6165,
                "loc": {
                  "start": {
                    "line": 149,
                    "column": 10
                  },
                  "end": {
                    "line": 149,
                    "column": 27
                  }
                },
                "name": "sketchAreaClicked"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 6165,
                "end": 6493,
                "loc": {
                  "start": {
                    "line": 149,
                    "column": 27
                  },
                  "end": {
                    "line": 159,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 6166,
                    "end": 6172,
                    "loc": {
                      "start": {
                        "line": 149,
                        "column": 28
                      },
                      "end": {
                        "line": 149,
                        "column": 34
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 6174,
                  "end": 6493,
                  "loc": {
                    "start": {
                      "line": 149,
                      "column": 36
                    },
                    "end": {
                      "line": 159,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 6231,
                      "end": 6402,
                      "loc": {
                        "start": {
                          "line": 151,
                          "column": 8
                        },
                        "end": {
                          "line": 155,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 6235,
                        "end": 6264,
                        "loc": {
                          "start": {
                            "line": 151,
                            "column": 12
                          },
                          "end": {
                            "line": 151,
                            "column": 41
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 6235,
                          "end": 6253,
                          "loc": {
                            "start": {
                              "line": 151,
                              "column": 12
                            },
                            "end": {
                              "line": 151,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 6235,
                            "end": 6239,
                            "loc": {
                              "start": {
                                "line": 151,
                                "column": 12
                              },
                              "end": {
                                "line": 151,
                                "column": 16
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6240,
                            "end": 6253,
                            "loc": {
                              "start": {
                                "line": 151,
                                "column": 17
                              },
                              "end": {
                                "line": 151,
                                "column": 30
                              }
                            },
                            "name": "currentSketch"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "operator": "!==",
                        "right": {
                          "type": "Identifier",
                          "start": 6258,
                          "end": 6264,
                          "loc": {
                            "start": {
                              "line": 151,
                              "column": 35
                            },
                            "end": {
                              "line": 151,
                              "column": 41
                            }
                          },
                          "name": "sketch"
                        },
                        "leadingComments": null
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 6266,
                        "end": 6402,
                        "loc": {
                          "start": {
                            "line": 151,
                            "column": 43
                          },
                          "end": {
                            "line": 155,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 6340,
                            "end": 6372,
                            "loc": {
                              "start": {
                                "line": 153,
                                "column": 12
                              },
                              "end": {
                                "line": 153,
                                "column": 44
                              }
                            },
                            "expression": {
                              "type": "AwaitExpression",
                              "start": 6340,
                              "end": 6371,
                              "loc": {
                                "start": {
                                  "line": 153,
                                  "column": 12
                                },
                                "end": {
                                  "line": 153,
                                  "column": 43
                                }
                              },
                              "all": false,
                              "argument": {
                                "type": "CallExpression",
                                "start": 6346,
                                "end": 6371,
                                "loc": {
                                  "start": {
                                    "line": 153,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 153,
                                    "column": 43
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 6346,
                                  "end": 6363,
                                  "loc": {
                                    "start": {
                                      "line": 153,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 153,
                                      "column": 35
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 6346,
                                    "end": 6350,
                                    "loc": {
                                      "start": {
                                        "line": 153,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 153,
                                        "column": 22
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 6351,
                                    "end": 6363,
                                    "loc": {
                                      "start": {
                                        "line": 153,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 153,
                                        "column": 35
                                      }
                                    },
                                    "name": "selectSketch"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 6364,
                                    "end": 6370,
                                    "loc": {
                                      "start": {
                                        "line": 153,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 153,
                                        "column": 42
                                      }
                                    },
                                    "name": "sketch"
                                  }
                                ]
                              },
                              "leadingComments": null
                            },
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " none or other selected -> select clicked one",
                                "start": 6280,
                                "end": 6327,
                                "loc": {
                                  "start": {
                                    "line": 152,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 152,
                                    "column": 59
                                  }
                                },
                                "range": [
                                  6280,
                                  6327
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 6385,
                            "end": 6392,
                            "loc": {
                              "start": {
                                "line": 154,
                                "column": 12
                              },
                              "end": {
                                "line": 154,
                                "column": 19
                              }
                            },
                            "argument": null
                          }
                        ],
                        "trailingComments": null
                      },
                      "alternate": null,
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " handle sketch selection/unselection",
                          "start": 6184,
                          "end": 6222,
                          "loc": {
                            "start": {
                              "line": 150,
                              "column": 8
                            },
                            "end": {
                              "line": 150,
                              "column": 46
                            }
                          },
                          "range": [
                            6184,
                            6222
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " call whatever controls handler is active now",
                          "start": 6412,
                          "end": 6459,
                          "loc": {
                            "start": {
                              "line": 157,
                              "column": 8
                            },
                            "end": {
                              "line": 157,
                              "column": 55
                            }
                          },
                          "range": [
                            6412,
                            6459
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6468,
                      "end": 6487,
                      "loc": {
                        "start": {
                          "line": 158,
                          "column": 8
                        },
                        "end": {
                          "line": 158,
                          "column": 27
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 6468,
                        "end": 6486,
                        "loc": {
                          "start": {
                            "line": 158,
                            "column": 8
                          },
                          "end": {
                            "line": 158,
                            "column": 26
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 6474,
                          "end": 6486,
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 14
                            },
                            "end": {
                              "line": 158,
                              "column": 26
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 6474,
                            "end": 6484,
                            "loc": {
                              "start": {
                                "line": 158,
                                "column": 14
                              },
                              "end": {
                                "line": 158,
                                "column": 24
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 6474,
                              "end": 6478,
                              "loc": {
                                "start": {
                                  "line": 158,
                                  "column": 14
                                },
                                "end": {
                                  "line": 158,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6479,
                              "end": 6484,
                              "loc": {
                                "start": {
                                  "line": 158,
                                  "column": 19
                                },
                                "end": {
                                  "line": 158,
                                  "column": 24
                                }
                              },
                              "name": "click"
                            },
                            "computed": false
                          },
                          "arguments": []
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " call whatever controls handler is active now",
                          "start": 6412,
                          "end": 6459,
                          "loc": {
                            "start": {
                              "line": 157,
                              "column": 8
                            },
                            "end": {
                              "line": 157,
                              "column": 55
                            }
                          },
                          "range": [
                            6412,
                            6459
                          ]
                        }
                      ]
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": "always called when someone clicks on a sketch's area",
                  "start": 6083,
                  "end": 6137,
                  "loc": {
                    "start": {
                      "line": 148,
                      "column": 4
                    },
                    "end": {
                      "line": 148,
                      "column": 58
                    }
                  },
                  "range": [
                    6083,
                    6137
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 6499,
              "end": 6784,
              "loc": {
                "start": {
                  "line": 161,
                  "column": 4
                },
                "end": {
                  "line": 169,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 6505,
                "end": 6525,
                "loc": {
                  "start": {
                    "line": 161,
                    "column": 10
                  },
                  "end": {
                    "line": 161,
                    "column": 30
                  }
                },
                "name": "sketchAreaMouseMoved"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 6525,
                "end": 6784,
                "loc": {
                  "start": {
                    "line": 161,
                    "column": 30
                  },
                  "end": {
                    "line": 169,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 6526,
                    "end": 6532,
                    "loc": {
                      "start": {
                        "line": 161,
                        "column": 31
                      },
                      "end": {
                        "line": 161,
                        "column": 37
                      }
                    },
                    "name": "sketch"
                  },
                  {
                    "type": "Identifier",
                    "start": 6534,
                    "end": 6539,
                    "loc": {
                      "start": {
                        "line": 161,
                        "column": 39
                      },
                      "end": {
                        "line": 161,
                        "column": 44
                      }
                    },
                    "name": "point"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 6541,
                  "end": 6784,
                  "loc": {
                    "start": {
                      "line": 161,
                      "column": 46
                    },
                    "end": {
                      "line": 169,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 6597,
                      "end": 6651,
                      "loc": {
                        "start": {
                          "line": 163,
                          "column": 8
                        },
                        "end": {
                          "line": 164,
                          "column": 19
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 6601,
                        "end": 6630,
                        "loc": {
                          "start": {
                            "line": 163,
                            "column": 12
                          },
                          "end": {
                            "line": 163,
                            "column": 41
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 6601,
                          "end": 6607,
                          "loc": {
                            "start": {
                              "line": 163,
                              "column": 12
                            },
                            "end": {
                              "line": 163,
                              "column": 18
                            }
                          },
                          "name": "sketch",
                          "leadingComments": null
                        },
                        "operator": "!==",
                        "right": {
                          "type": "MemberExpression",
                          "start": 6612,
                          "end": 6630,
                          "loc": {
                            "start": {
                              "line": 163,
                              "column": 23
                            },
                            "end": {
                              "line": 163,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 6612,
                            "end": 6616,
                            "loc": {
                              "start": {
                                "line": 163,
                                "column": 23
                              },
                              "end": {
                                "line": 163,
                                "column": 27
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6617,
                            "end": 6630,
                            "loc": {
                              "start": {
                                "line": 163,
                                "column": 28
                              },
                              "end": {
                                "line": 163,
                                "column": 41
                              }
                            },
                            "name": "currentSketch"
                          },
                          "computed": false
                        },
                        "leadingComments": null
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 6644,
                        "end": 6651,
                        "loc": {
                          "start": {
                            "line": 164,
                            "column": 12
                          },
                          "end": {
                            "line": 164,
                            "column": 19
                          }
                        },
                        "argument": null,
                        "leadingComments": null,
                        "trailingComments": null
                      },
                      "alternate": null,
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " ignore moving on unselected sketch",
                          "start": 6551,
                          "end": 6588,
                          "loc": {
                            "start": {
                              "line": 162,
                              "column": 8
                            },
                            "end": {
                              "line": 162,
                              "column": 45
                            }
                          },
                          "range": [
                            6551,
                            6588
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "TODO: await mouseMove handler?",
                          "start": 6661,
                          "end": 6693,
                          "loc": {
                            "start": {
                              "line": 166,
                              "column": 8
                            },
                            "end": {
                              "line": 166,
                              "column": 40
                            }
                          },
                          "range": [
                            6661,
                            6693
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6702,
                      "end": 6746,
                      "loc": {
                        "start": {
                          "line": 167,
                          "column": 8
                        },
                        "end": {
                          "line": 167,
                          "column": 52
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6702,
                        "end": 6745,
                        "loc": {
                          "start": {
                            "line": 167,
                            "column": 8
                          },
                          "end": {
                            "line": 167,
                            "column": 51
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6702,
                          "end": 6738,
                          "loc": {
                            "start": {
                              "line": 167,
                              "column": 8
                            },
                            "end": {
                              "line": 167,
                              "column": 44
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 6702,
                            "end": 6733,
                            "loc": {
                              "start": {
                                "line": 167,
                                "column": 8
                              },
                              "end": {
                                "line": 167,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 6702,
                              "end": 6716,
                              "loc": {
                                "start": {
                                  "line": 167,
                                  "column": 8
                                },
                                "end": {
                                  "line": 167,
                                  "column": 22
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 6702,
                                "end": 6706,
                                "loc": {
                                  "start": {
                                    "line": 167,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 167,
                                    "column": 12
                                  }
                                },
                                "leadingComments": null
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6707,
                                "end": 6716,
                                "loc": {
                                  "start": {
                                    "line": 167,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 167,
                                    "column": 22
                                  }
                                },
                                "name": "modelData"
                              },
                              "computed": false,
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6717,
                              "end": 6733,
                              "loc": {
                                "start": {
                                  "line": 167,
                                  "column": 23
                                },
                                "end": {
                                  "line": 167,
                                  "column": 39
                                }
                              },
                              "name": "interactionPoint"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6734,
                            "end": 6738,
                            "loc": {
                              "start": {
                                "line": 167,
                                "column": 40
                              },
                              "end": {
                                "line": 167,
                                "column": 44
                              }
                            },
                            "name": "copy"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 6739,
                            "end": 6744,
                            "loc": {
                              "start": {
                                "line": 167,
                                "column": 45
                              },
                              "end": {
                                "line": 167,
                                "column": 50
                              }
                            },
                            "name": "point"
                          }
                        ],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "TODO: await mouseMove handler?",
                          "start": 6661,
                          "end": 6693,
                          "loc": {
                            "start": {
                              "line": 166,
                              "column": 8
                            },
                            "end": {
                              "line": 166,
                              "column": 40
                            }
                          },
                          "range": [
                            6661,
                            6693
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6755,
                      "end": 6778,
                      "loc": {
                        "start": {
                          "line": 168,
                          "column": 8
                        },
                        "end": {
                          "line": 168,
                          "column": 31
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6755,
                        "end": 6777,
                        "loc": {
                          "start": {
                            "line": 168,
                            "column": 8
                          },
                          "end": {
                            "line": 168,
                            "column": 30
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6755,
                          "end": 6775,
                          "loc": {
                            "start": {
                              "line": 168,
                              "column": 8
                            },
                            "end": {
                              "line": 168,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 6755,
                            "end": 6759,
                            "loc": {
                              "start": {
                                "line": 168,
                                "column": 8
                              },
                              "end": {
                                "line": 168,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6760,
                            "end": 6775,
                            "loc": {
                              "start": {
                                "line": 168,
                                "column": 13
                              },
                              "end": {
                                "line": 168,
                                "column": 28
                              }
                            },
                            "name": "setActionCursor"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 6790,
              "end": 7485,
              "loc": {
                "start": {
                  "line": 171,
                  "column": 4
                },
                "end": {
                  "line": 184,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 6796,
                "end": 6818,
                "loc": {
                  "start": {
                    "line": 171,
                    "column": 10
                  },
                  "end": {
                    "line": 171,
                    "column": 32
                  }
                },
                "name": "sketchAreaRightClicked"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 6818,
                "end": 7485,
                "loc": {
                  "start": {
                    "line": 171,
                    "column": 32
                  },
                  "end": {
                    "line": 184,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 6819,
                    "end": 6825,
                    "loc": {
                      "start": {
                        "line": 171,
                        "column": 33
                      },
                      "end": {
                        "line": 171,
                        "column": 39
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 6827,
                  "end": 7485,
                  "loc": {
                    "start": {
                      "line": 171,
                      "column": 41
                    },
                    "end": {
                      "line": 184,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 6888,
                      "end": 6942,
                      "loc": {
                        "start": {
                          "line": 173,
                          "column": 8
                        },
                        "end": {
                          "line": 174,
                          "column": 19
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 6892,
                        "end": 6921,
                        "loc": {
                          "start": {
                            "line": 173,
                            "column": 12
                          },
                          "end": {
                            "line": 173,
                            "column": 41
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 6892,
                          "end": 6898,
                          "loc": {
                            "start": {
                              "line": 173,
                              "column": 12
                            },
                            "end": {
                              "line": 173,
                              "column": 18
                            }
                          },
                          "name": "sketch",
                          "leadingComments": null
                        },
                        "operator": "!==",
                        "right": {
                          "type": "MemberExpression",
                          "start": 6903,
                          "end": 6921,
                          "loc": {
                            "start": {
                              "line": 173,
                              "column": 23
                            },
                            "end": {
                              "line": 173,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 6903,
                            "end": 6907,
                            "loc": {
                              "start": {
                                "line": 173,
                                "column": 23
                              },
                              "end": {
                                "line": 173,
                                "column": 27
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6908,
                            "end": 6921,
                            "loc": {
                              "start": {
                                "line": 173,
                                "column": 28
                              },
                              "end": {
                                "line": 173,
                                "column": 41
                              }
                            },
                            "name": "currentSketch"
                          },
                          "computed": false
                        },
                        "leadingComments": null
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 6935,
                        "end": 6942,
                        "loc": {
                          "start": {
                            "line": 174,
                            "column": 12
                          },
                          "end": {
                            "line": 174,
                            "column": 19
                          }
                        },
                        "argument": null,
                        "leadingComments": null,
                        "trailingComments": null
                      },
                      "alternate": null,
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " ignore right click on unselected sketch",
                          "start": 6837,
                          "end": 6879,
                          "loc": {
                            "start": {
                              "line": 172,
                              "column": 8
                            },
                            "end": {
                              "line": 172,
                              "column": 50
                            }
                          },
                          "range": [
                            6837,
                            6879
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " if any tool is selected, deselect it, otherwise deselect sketch",
                          "start": 6952,
                          "end": 7018,
                          "loc": {
                            "start": {
                              "line": 176,
                              "column": 8
                            },
                            "end": {
                              "line": 176,
                              "column": 74
                            }
                          },
                          "range": [
                            6952,
                            7018
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " FIXME prototype checking is bad, but changing __sketchControlsHandler",
                          "start": 7027,
                          "end": 7099,
                          "loc": {
                            "start": {
                              "line": 177,
                              "column": 8
                            },
                            "end": {
                              "line": 177,
                              "column": 80
                            }
                          },
                          "range": [
                            7027,
                            7099
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " or deselecting sketch from handler is no better. Think of a good solution.",
                          "start": 7108,
                          "end": 7185,
                          "loc": {
                            "start": {
                              "line": 178,
                              "column": 8
                            },
                            "end": {
                              "line": 178,
                              "column": 85
                            }
                          },
                          "range": [
                            7108,
                            7185
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 7194,
                      "end": 7268,
                      "loc": {
                        "start": {
                          "line": 179,
                          "column": 8
                        },
                        "end": {
                          "line": 179,
                          "column": 82
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7198,
                          "end": 7267,
                          "loc": {
                            "start": {
                              "line": 179,
                              "column": 12
                            },
                            "end": {
                              "line": 179,
                              "column": 81
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7198,
                            "end": 7213,
                            "loc": {
                              "start": {
                                "line": 179,
                                "column": 12
                              },
                              "end": {
                                "line": 179,
                                "column": 27
                              }
                            },
                            "name": "prototypeBefore",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 7216,
                            "end": 7267,
                            "loc": {
                              "start": {
                                "line": 179,
                                "column": 30
                              },
                              "end": {
                                "line": 179,
                                "column": 81
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7216,
                              "end": 7237,
                              "loc": {
                                "start": {
                                  "line": 179,
                                  "column": 30
                                },
                                "end": {
                                  "line": 179,
                                  "column": 51
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 7216,
                                "end": 7222,
                                "loc": {
                                  "start": {
                                    "line": 179,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 179,
                                    "column": 36
                                  }
                                },
                                "name": "Object"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7223,
                                "end": 7237,
                                "loc": {
                                  "start": {
                                    "line": 179,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 179,
                                    "column": 51
                                  }
                                },
                                "name": "getPrototypeOf"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 7238,
                                "end": 7266,
                                "loc": {
                                  "start": {
                                    "line": 179,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 179,
                                    "column": 80
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 7238,
                                  "end": 7242,
                                  "loc": {
                                    "start": {
                                      "line": 179,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 179,
                                      "column": 56
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7243,
                                  "end": 7266,
                                  "loc": {
                                    "start": {
                                      "line": 179,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 179,
                                      "column": 80
                                    }
                                  },
                                  "name": "__sketchControlsHandler"
                                },
                                "computed": false
                              }
                            ]
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "var",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " if any tool is selected, deselect it, otherwise deselect sketch",
                          "start": 6952,
                          "end": 7018,
                          "loc": {
                            "start": {
                              "line": 176,
                              "column": 8
                            },
                            "end": {
                              "line": 176,
                              "column": 74
                            }
                          },
                          "range": [
                            6952,
                            7018
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " FIXME prototype checking is bad, but changing __sketchControlsHandler",
                          "start": 7027,
                          "end": 7099,
                          "loc": {
                            "start": {
                              "line": 177,
                              "column": 8
                            },
                            "end": {
                              "line": 177,
                              "column": 80
                            }
                          },
                          "range": [
                            7027,
                            7099
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " or deselecting sketch from handler is no better. Think of a good solution.",
                          "start": 7108,
                          "end": 7185,
                          "loc": {
                            "start": {
                              "line": 178,
                              "column": 8
                            },
                            "end": {
                              "line": 178,
                              "column": 85
                            }
                          },
                          "range": [
                            7108,
                            7185
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7277,
                      "end": 7308,
                      "loc": {
                        "start": {
                          "line": 180,
                          "column": 8
                        },
                        "end": {
                          "line": 180,
                          "column": 39
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 7277,
                        "end": 7307,
                        "loc": {
                          "start": {
                            "line": 180,
                            "column": 8
                          },
                          "end": {
                            "line": 180,
                            "column": 38
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 7283,
                          "end": 7307,
                          "loc": {
                            "start": {
                              "line": 180,
                              "column": 14
                            },
                            "end": {
                              "line": 180,
                              "column": 38
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 7283,
                            "end": 7298,
                            "loc": {
                              "start": {
                                "line": 180,
                                "column": 14
                              },
                              "end": {
                                "line": 180,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 7283,
                              "end": 7287,
                              "loc": {
                                "start": {
                                  "line": 180,
                                  "column": 14
                                },
                                "end": {
                                  "line": 180,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7288,
                              "end": 7298,
                              "loc": {
                                "start": {
                                  "line": 180,
                                  "column": 19
                                },
                                "end": {
                                  "line": 180,
                                  "column": 29
                                }
                              },
                              "name": "chooseTool"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "start": 7299,
                              "end": 7306,
                              "loc": {
                                "start": {
                                  "line": 180,
                                  "column": 30
                                },
                                "end": {
                                  "line": 180,
                                  "column": 37
                                }
                              },
                              "value": "empty",
                              "rawValue": "empty",
                              "raw": "'empty'"
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 7317,
                      "end": 7390,
                      "loc": {
                        "start": {
                          "line": 181,
                          "column": 8
                        },
                        "end": {
                          "line": 181,
                          "column": 81
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7321,
                          "end": 7389,
                          "loc": {
                            "start": {
                              "line": 181,
                              "column": 12
                            },
                            "end": {
                              "line": 181,
                              "column": 80
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7321,
                            "end": 7335,
                            "loc": {
                              "start": {
                                "line": 181,
                                "column": 12
                              },
                              "end": {
                                "line": 181,
                                "column": 26
                              }
                            },
                            "name": "prototypeAfter"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 7338,
                            "end": 7389,
                            "loc": {
                              "start": {
                                "line": 181,
                                "column": 29
                              },
                              "end": {
                                "line": 181,
                                "column": 80
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7338,
                              "end": 7359,
                              "loc": {
                                "start": {
                                  "line": 181,
                                  "column": 29
                                },
                                "end": {
                                  "line": 181,
                                  "column": 50
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 7338,
                                "end": 7344,
                                "loc": {
                                  "start": {
                                    "line": 181,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 181,
                                    "column": 35
                                  }
                                },
                                "name": "Object"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7345,
                                "end": 7359,
                                "loc": {
                                  "start": {
                                    "line": 181,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 181,
                                    "column": 50
                                  }
                                },
                                "name": "getPrototypeOf"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 7360,
                                "end": 7388,
                                "loc": {
                                  "start": {
                                    "line": 181,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 181,
                                    "column": 79
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 7360,
                                  "end": 7364,
                                  "loc": {
                                    "start": {
                                      "line": 181,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 181,
                                      "column": 55
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7365,
                                  "end": 7388,
                                  "loc": {
                                    "start": {
                                      "line": 181,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 181,
                                      "column": 79
                                    }
                                  },
                                  "name": "__sketchControlsHandler"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 7399,
                      "end": 7479,
                      "loc": {
                        "start": {
                          "line": 182,
                          "column": 8
                        },
                        "end": {
                          "line": 183,
                          "column": 40
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 7403,
                        "end": 7437,
                        "loc": {
                          "start": {
                            "line": 182,
                            "column": 12
                          },
                          "end": {
                            "line": 182,
                            "column": 46
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 7403,
                          "end": 7418,
                          "loc": {
                            "start": {
                              "line": 182,
                              "column": 12
                            },
                            "end": {
                              "line": 182,
                              "column": 27
                            }
                          },
                          "name": "prototypeBefore"
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 7423,
                          "end": 7437,
                          "loc": {
                            "start": {
                              "line": 182,
                              "column": 32
                            },
                            "end": {
                              "line": 182,
                              "column": 46
                            }
                          },
                          "name": "prototypeAfter"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 7451,
                        "end": 7479,
                        "loc": {
                          "start": {
                            "line": 183,
                            "column": 12
                          },
                          "end": {
                            "line": 183,
                            "column": 40
                          }
                        },
                        "expression": {
                          "type": "AwaitExpression",
                          "start": 7451,
                          "end": 7478,
                          "loc": {
                            "start": {
                              "line": 183,
                              "column": 12
                            },
                            "end": {
                              "line": 183,
                              "column": 39
                            }
                          },
                          "all": false,
                          "argument": {
                            "type": "CallExpression",
                            "start": 7457,
                            "end": 7478,
                            "loc": {
                              "start": {
                                "line": 183,
                                "column": 18
                              },
                              "end": {
                                "line": 183,
                                "column": 39
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7457,
                              "end": 7476,
                              "loc": {
                                "start": {
                                  "line": 183,
                                  "column": 18
                                },
                                "end": {
                                  "line": 183,
                                  "column": 37
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 7457,
                                "end": 7461,
                                "loc": {
                                  "start": {
                                    "line": 183,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 183,
                                    "column": 22
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7462,
                                "end": 7476,
                                "loc": {
                                  "start": {
                                    "line": 183,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 183,
                                    "column": 37
                                  }
                                },
                                "name": "deselectSketch"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 7491,
              "end": 8989,
              "loc": {
                "start": {
                  "line": 186,
                  "column": 4
                },
                "end": {
                  "line": 228,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 7491,
                "end": 7506,
                "loc": {
                  "start": {
                    "line": 186,
                    "column": 4
                  },
                  "end": {
                    "line": 186,
                    "column": 19
                  }
                },
                "name": "setActionCursor"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 7506,
                "end": 8989,
                "loc": {
                  "start": {
                    "line": 186,
                    "column": 19
                  },
                  "end": {
                    "line": 228,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 7507,
                    "end": 7513,
                    "loc": {
                      "start": {
                        "line": 186,
                        "column": 20
                      },
                      "end": {
                        "line": 186,
                        "column": 26
                      }
                    },
                    "name": "action"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 7515,
                  "end": 8989,
                  "loc": {
                    "start": {
                      "line": 186,
                      "column": 28
                    },
                    "end": {
                      "line": 228,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 7525,
                      "end": 8621,
                      "loc": {
                        "start": {
                          "line": 187,
                          "column": 8
                        },
                        "end": {
                          "line": 216,
                          "column": 11
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7529,
                          "end": 8620,
                          "loc": {
                            "start": {
                              "line": 187,
                              "column": 12
                            },
                            "end": {
                              "line": 216,
                              "column": 10
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7529,
                            "end": 7539,
                            "loc": {
                              "start": {
                                "line": 187,
                                "column": 12
                              },
                              "end": {
                                "line": 187,
                                "column": 22
                              }
                            },
                            "name": "cursorsURL"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 7542,
                            "end": 8620,
                            "loc": {
                              "start": {
                                "line": 187,
                                "column": 25
                              },
                              "end": {
                                "line": 216,
                                "column": 10
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 7546,
                              "end": 7549,
                              "loc": {
                                "start": {
                                  "line": 187,
                                  "column": 29
                                },
                                "end": {
                                  "line": 187,
                                  "column": 32
                                }
                              },
                              "name": "Map"
                            },
                            "arguments": [
                              {
                                "type": "ArrayExpression",
                                "start": 7551,
                                "end": 8619,
                                "loc": {
                                  "start": {
                                    "line": 187,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 216,
                                    "column": 9
                                  }
                                },
                                "elements": [
                                  {
                                    "type": "ArrayExpression",
                                    "start": 7565,
                                    "end": 7585,
                                    "loc": {
                                      "start": {
                                        "line": 188,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 188,
                                        "column": 32
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 7566,
                                        "end": 7573,
                                        "loc": {
                                          "start": {
                                            "line": 188,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 188,
                                            "column": 20
                                          }
                                        },
                                        "value": "empty",
                                        "rawValue": "empty",
                                        "raw": "'empty'"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 7575,
                                        "end": 7584,
                                        "loc": {
                                          "start": {
                                            "line": 188,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 188,
                                            "column": 31
                                          }
                                        },
                                        "value": "default",
                                        "rawValue": "default",
                                        "raw": "'default'"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "ArrayExpression",
                                    "start": 7599,
                                    "end": 7620,
                                    "loc": {
                                      "start": {
                                        "line": 189,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 189,
                                        "column": 33
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 7600,
                                        "end": 7608,
                                        "loc": {
                                          "start": {
                                            "line": 189,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 189,
                                            "column": 21
                                          }
                                        },
                                        "value": "delete",
                                        "rawValue": "delete",
                                        "raw": "'delete'"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 7610,
                                        "end": 7619,
                                        "loc": {
                                          "start": {
                                            "line": 189,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 189,
                                            "column": 32
                                          }
                                        },
                                        "value": "no-drop",
                                        "rawValue": "no-drop",
                                        "raw": "'no-drop'"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "ArrayExpression",
                                    "start": 7658,
                                    "end": 7680,
                                    "loc": {
                                      "start": {
                                        "line": 191,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 191,
                                        "column": 34
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 7659,
                                        "end": 7666,
                                        "loc": {
                                          "start": {
                                            "line": 191,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 191,
                                            "column": 20
                                          }
                                        },
                                        "value": "point",
                                        "rawValue": "point",
                                        "raw": "'point'",
                                        "leadingComments": null
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 7668,
                                        "end": 7679,
                                        "loc": {
                                          "start": {
                                            "line": 191,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 191,
                                            "column": 33
                                          }
                                        },
                                        "value": "crosshair",
                                        "rawValue": "crosshair",
                                        "raw": "'crosshair'"
                                      }
                                    ],
                                    "leadingComments": [
                                      {
                                        "type": "CommentLine",
                                        "value": " geometry",
                                        "start": 7634,
                                        "end": 7645,
                                        "loc": {
                                          "start": {
                                            "line": 190,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 190,
                                            "column": 23
                                          }
                                        },
                                        "range": [
                                          7634,
                                          7645
                                        ]
                                      }
                                    ]
                                  },
                                  {
                                    "type": "ArrayExpression",
                                    "start": 7694,
                                    "end": 7715,
                                    "loc": {
                                      "start": {
                                        "line": 192,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 192,
                                        "column": 33
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 7695,
                                        "end": 7701,
                                        "loc": {
                                          "start": {
                                            "line": 192,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 192,
                                            "column": 19
                                          }
                                        },
                                        "value": "line",
                                        "rawValue": "line",
                                        "raw": "'line'"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 7703,
                                        "end": 7714,
                                        "loc": {
                                          "start": {
                                            "line": 192,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 192,
                                            "column": 32
                                          }
                                        },
                                        "value": "crosshair",
                                        "rawValue": "crosshair",
                                        "raw": "'crosshair'"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "ArrayExpression",
                                    "start": 7729,
                                    "end": 7749,
                                    "loc": {
                                      "start": {
                                        "line": 193,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 193,
                                        "column": 32
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 7730,
                                        "end": 7735,
                                        "loc": {
                                          "start": {
                                            "line": 193,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 193,
                                            "column": 18
                                          }
                                        },
                                        "value": "arc",
                                        "rawValue": "arc",
                                        "raw": "'arc'"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 7737,
                                        "end": 7748,
                                        "loc": {
                                          "start": {
                                            "line": 193,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 193,
                                            "column": 31
                                          }
                                        },
                                        "value": "crosshair",
                                        "rawValue": "crosshair",
                                        "raw": "'crosshair'"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "ArrayExpression",
                                    "start": 7763,
                                    "end": 7788,
                                    "loc": {
                                      "start": {
                                        "line": 194,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 194,
                                        "column": 37
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 7764,
                                        "end": 7774,
                                        "loc": {
                                          "start": {
                                            "line": 194,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 194,
                                            "column": 23
                                          }
                                        },
                                        "value": "polyline",
                                        "rawValue": "polyline",
                                        "raw": "'polyline'"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 7776,
                                        "end": 7787,
                                        "loc": {
                                          "start": {
                                            "line": 194,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 194,
                                            "column": 36
                                          }
                                        },
                                        "value": "crosshair",
                                        "rawValue": "crosshair",
                                        "raw": "'crosshair'"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "ArrayExpression",
                                    "start": 7829,
                                    "end": 7852,
                                    "loc": {
                                      "start": {
                                        "line": 196,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 196,
                                        "column": 35
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 7830,
                                        "end": 7840,
                                        "loc": {
                                          "start": {
                                            "line": 196,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 196,
                                            "column": 23
                                          }
                                        },
                                        "value": "fixation",
                                        "rawValue": "fixation",
                                        "raw": "'fixation'",
                                        "leadingComments": null
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 7842,
                                        "end": 7851,
                                        "loc": {
                                          "start": {
                                            "line": 196,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 196,
                                            "column": 34
                                          }
                                        },
                                        "value": "default",
                                        "rawValue": "default",
                                        "raw": "'default'"
                                      }
                                    ],
                                    "leadingComments": [
                                      {
                                        "type": "CommentLine",
                                        "value": " constraints",
                                        "start": 7802,
                                        "end": 7816,
                                        "loc": {
                                          "start": {
                                            "line": 195,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 195,
                                            "column": 26
                                          }
                                        },
                                        "range": [
                                          7802,
                                          7816
                                        ]
                                      }
                                    ]
                                  },
                                  {
                                    "type": "ArrayExpression",
                                    "start": 7866,
                                    "end": 7890,
                                    "loc": {
                                      "start": {
                                        "line": 197,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 197,
                                        "column": 36
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 7867,
                                        "end": 7878,
                                        "loc": {
                                          "start": {
                                            "line": 197,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 197,
                                            "column": 24
                                          }
                                        },
                                        "value": "incidence",
                                        "rawValue": "incidence",
                                        "raw": "'incidence'"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 7880,
                                        "end": 7889,
                                        "loc": {
                                          "start": {
                                            "line": 197,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 197,
                                            "column": 35
                                          }
                                        },
                                        "value": "default",
                                        "rawValue": "default",
                                        "raw": "'default'"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "ArrayExpression",
                                    "start": 7904,
                                    "end": 7927,
                                    "loc": {
                                      "start": {
                                        "line": 198,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 198,
                                        "column": 35
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 7905,
                                        "end": 7915,
                                        "loc": {
                                          "start": {
                                            "line": 198,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 198,
                                            "column": 23
                                          }
                                        },
                                        "value": "distance",
                                        "rawValue": "distance",
                                        "raw": "'distance'"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 7917,
                                        "end": 7926,
                                        "loc": {
                                          "start": {
                                            "line": 198,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 198,
                                            "column": 34
                                          }
                                        },
                                        "value": "default",
                                        "rawValue": "default",
                                        "raw": "'default'"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "ArrayExpression",
                                    "start": 7941,
                                    "end": 7961,
                                    "loc": {
                                      "start": {
                                        "line": 199,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 199,
                                        "column": 32
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 7942,
                                        "end": 7949,
                                        "loc": {
                                          "start": {
                                            "line": 199,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 199,
                                            "column": 20
                                          }
                                        },
                                        "value": "angle",
                                        "rawValue": "angle",
                                        "raw": "'angle'"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 7951,
                                        "end": 7960,
                                        "loc": {
                                          "start": {
                                            "line": 199,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 199,
                                            "column": 31
                                          }
                                        },
                                        "value": "default",
                                        "rawValue": "default",
                                        "raw": "'default'"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "ArrayExpression",
                                    "start": 7975,
                                    "end": 7997,
                                    "loc": {
                                      "start": {
                                        "line": 200,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 200,
                                        "column": 34
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 7976,
                                        "end": 7985,
                                        "loc": {
                                          "start": {
                                            "line": 200,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 200,
                                            "column": 22
                                          }
                                        },
                                        "value": "angleOX",
                                        "rawValue": "angleOX",
                                        "raw": "'angleOX'"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 7987,
                                        "end": 7996,
                                        "loc": {
                                          "start": {
                                            "line": 200,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 200,
                                            "column": 33
                                          }
                                        },
                                        "value": "default",
                                        "rawValue": "default",
                                        "raw": "'default'"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "ArrayExpression",
                                    "start": 8011,
                                    "end": 8034,
                                    "loc": {
                                      "start": {
                                        "line": 201,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 201,
                                        "column": 35
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 8012,
                                        "end": 8022,
                                        "loc": {
                                          "start": {
                                            "line": 201,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 201,
                                            "column": 23
                                          }
                                        },
                                        "value": "tangency",
                                        "rawValue": "tangency",
                                        "raw": "'tangency'"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 8024,
                                        "end": 8033,
                                        "loc": {
                                          "start": {
                                            "line": 201,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 201,
                                            "column": 34
                                          }
                                        },
                                        "value": "default",
                                        "rawValue": "default",
                                        "raw": "'default'"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "ArrayExpression",
                                    "start": 8048,
                                    "end": 8076,
                                    "loc": {
                                      "start": {
                                        "line": 202,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 202,
                                        "column": 40
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 8049,
                                        "end": 8064,
                                        "loc": {
                                          "start": {
                                            "line": 202,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 202,
                                            "column": 28
                                          }
                                        },
                                        "value": "horizontality",
                                        "rawValue": "horizontality",
                                        "raw": "'horizontality'"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 8066,
                                        "end": 8075,
                                        "loc": {
                                          "start": {
                                            "line": 202,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 202,
                                            "column": 39
                                          }
                                        },
                                        "value": "default",
                                        "rawValue": "default",
                                        "raw": "'default'"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "ArrayExpression",
                                    "start": 8090,
                                    "end": 8116,
                                    "loc": {
                                      "start": {
                                        "line": 203,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 203,
                                        "column": 38
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 8091,
                                        "end": 8104,
                                        "loc": {
                                          "start": {
                                            "line": 203,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 203,
                                            "column": 26
                                          }
                                        },
                                        "value": "verticality",
                                        "rawValue": "verticality",
                                        "raw": "'verticality'"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 8106,
                                        "end": 8115,
                                        "loc": {
                                          "start": {
                                            "line": 203,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 203,
                                            "column": 37
                                          }
                                        },
                                        "value": "default",
                                        "rawValue": "default",
                                        "raw": "'default'"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "ArrayExpression",
                                    "start": 8130,
                                    "end": 8161,
                                    "loc": {
                                      "start": {
                                        "line": 204,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 204,
                                        "column": 43
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 8131,
                                        "end": 8149,
                                        "loc": {
                                          "start": {
                                            "line": 204,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 204,
                                            "column": 31
                                          }
                                        },
                                        "value": "perpendicularity",
                                        "rawValue": "perpendicularity",
                                        "raw": "'perpendicularity'"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 8151,
                                        "end": 8160,
                                        "loc": {
                                          "start": {
                                            "line": 204,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 204,
                                            "column": 42
                                          }
                                        },
                                        "value": "default",
                                        "rawValue": "default",
                                        "raw": "'default'"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "ArrayExpression",
                                    "start": 8175,
                                    "end": 8201,
                                    "loc": {
                                      "start": {
                                        "line": 205,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 205,
                                        "column": 38
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 8176,
                                        "end": 8189,
                                        "loc": {
                                          "start": {
                                            "line": 205,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 205,
                                            "column": 26
                                          }
                                        },
                                        "value": "parallelity",
                                        "rawValue": "parallelity",
                                        "raw": "'parallelity'"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 8191,
                                        "end": 8200,
                                        "loc": {
                                          "start": {
                                            "line": 205,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 205,
                                            "column": 37
                                          }
                                        },
                                        "value": "default",
                                        "rawValue": "default",
                                        "raw": "'default'"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "ArrayExpression",
                                    "start": 8215,
                                    "end": 8240,
                                    "loc": {
                                      "start": {
                                        "line": 206,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 206,
                                        "column": 37
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 8216,
                                        "end": 8228,
                                        "loc": {
                                          "start": {
                                            "line": 206,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 206,
                                            "column": 25
                                          }
                                        },
                                        "value": "concentric",
                                        "rawValue": "concentric",
                                        "raw": "'concentric'"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 8230,
                                        "end": 8239,
                                        "loc": {
                                          "start": {
                                            "line": 206,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 206,
                                            "column": 36
                                          }
                                        },
                                        "value": "default",
                                        "rawValue": "default",
                                        "raw": "'default'"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "ArrayExpression",
                                    "start": 8254,
                                    "end": 8277,
                                    "loc": {
                                      "start": {
                                        "line": 207,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 207,
                                        "column": 35
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 8255,
                                        "end": 8265,
                                        "loc": {
                                          "start": {
                                            "line": 207,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 207,
                                            "column": 23
                                          }
                                        },
                                        "value": "midpoint",
                                        "rawValue": "midpoint",
                                        "raw": "'midpoint'"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 8267,
                                        "end": 8276,
                                        "loc": {
                                          "start": {
                                            "line": 207,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 207,
                                            "column": 34
                                          }
                                        },
                                        "value": "default",
                                        "rawValue": "default",
                                        "raw": "'default'"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "ArrayExpression",
                                    "start": 8291,
                                    "end": 8315,
                                    "loc": {
                                      "start": {
                                        "line": 208,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 208,
                                        "column": 36
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 8292,
                                        "end": 8303,
                                        "loc": {
                                          "start": {
                                            "line": 208,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 208,
                                            "column": 24
                                          }
                                        },
                                        "value": "symmetric",
                                        "rawValue": "symmetric",
                                        "raw": "'symmetric'"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 8305,
                                        "end": 8314,
                                        "loc": {
                                          "start": {
                                            "line": 208,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 208,
                                            "column": 35
                                          }
                                        },
                                        "value": "default",
                                        "rawValue": "default",
                                        "raw": "'default'"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "ArrayExpression",
                                    "start": 8329,
                                    "end": 8352,
                                    "loc": {
                                      "start": {
                                        "line": 209,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 209,
                                        "column": 35
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 8330,
                                        "end": 8340,
                                        "loc": {
                                          "start": {
                                            "line": 209,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 209,
                                            "column": 23
                                          }
                                        },
                                        "value": "colinear",
                                        "rawValue": "colinear",
                                        "raw": "'colinear'"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 8342,
                                        "end": 8351,
                                        "loc": {
                                          "start": {
                                            "line": 209,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 209,
                                            "column": 34
                                          }
                                        },
                                        "value": "default",
                                        "rawValue": "default",
                                        "raw": "'default'"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "ArrayExpression",
                                    "start": 8366,
                                    "end": 8395,
                                    "loc": {
                                      "start": {
                                        "line": 210,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 210,
                                        "column": 41
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 8367,
                                        "end": 8383,
                                        "loc": {
                                          "start": {
                                            "line": 210,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 210,
                                            "column": 29
                                          }
                                        },
                                        "value": "equal_distance",
                                        "rawValue": "equal_distance",
                                        "raw": "'equal_distance'"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 8385,
                                        "end": 8394,
                                        "loc": {
                                          "start": {
                                            "line": 210,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 210,
                                            "column": 40
                                          }
                                        },
                                        "value": "default",
                                        "rawValue": "default",
                                        "raw": "'default'"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "ArrayExpression",
                                    "start": 8409,
                                    "end": 8430,
                                    "loc": {
                                      "start": {
                                        "line": 211,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 211,
                                        "column": 33
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 8410,
                                        "end": 8418,
                                        "loc": {
                                          "start": {
                                            "line": 211,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 211,
                                            "column": 21
                                          }
                                        },
                                        "value": "radius",
                                        "rawValue": "radius",
                                        "raw": "'radius'"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 8420,
                                        "end": 8429,
                                        "loc": {
                                          "start": {
                                            "line": 211,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 211,
                                            "column": 32
                                          }
                                        },
                                        "value": "default",
                                        "rawValue": "default",
                                        "raw": "'default'"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "ArrayExpression",
                                    "start": 8444,
                                    "end": 8471,
                                    "loc": {
                                      "start": {
                                        "line": 212,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 212,
                                        "column": 39
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 8445,
                                        "end": 8459,
                                        "loc": {
                                          "start": {
                                            "line": 212,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 212,
                                            "column": 27
                                          }
                                        },
                                        "value": "equal_radius",
                                        "rawValue": "equal_radius",
                                        "raw": "'equal_radius'"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 8461,
                                        "end": 8470,
                                        "loc": {
                                          "start": {
                                            "line": 212,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 212,
                                            "column": 38
                                          }
                                        },
                                        "value": "default",
                                        "rawValue": "default",
                                        "raw": "'default'"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "ArrayExpression",
                                    "start": 8485,
                                    "end": 8519,
                                    "loc": {
                                      "start": {
                                        "line": 213,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 213,
                                        "column": 46
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 8486,
                                        "end": 8507,
                                        "loc": {
                                          "start": {
                                            "line": 213,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 213,
                                            "column": 34
                                          }
                                        },
                                        "value": "horizontal_distance",
                                        "rawValue": "horizontal_distance",
                                        "raw": "'horizontal_distance'"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 8509,
                                        "end": 8518,
                                        "loc": {
                                          "start": {
                                            "line": 213,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 213,
                                            "column": 45
                                          }
                                        },
                                        "value": "default",
                                        "rawValue": "default",
                                        "raw": "'default'"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "ArrayExpression",
                                    "start": 8533,
                                    "end": 8565,
                                    "loc": {
                                      "start": {
                                        "line": 214,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 214,
                                        "column": 44
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 8534,
                                        "end": 8553,
                                        "loc": {
                                          "start": {
                                            "line": 214,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 214,
                                            "column": 32
                                          }
                                        },
                                        "value": "vertical_distance",
                                        "rawValue": "vertical_distance",
                                        "raw": "'vertical_distance'"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 8555,
                                        "end": 8564,
                                        "loc": {
                                          "start": {
                                            "line": 214,
                                            "column": 34
                                          },
                                          "end": {
                                            "line": 214,
                                            "column": 43
                                          }
                                        },
                                        "value": "default",
                                        "rawValue": "default",
                                        "raw": "'default'"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "ArrayExpression",
                                    "start": 8579,
                                    "end": 8608,
                                    "loc": {
                                      "start": {
                                        "line": 215,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 215,
                                        "column": 41
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "Literal",
                                        "start": 8580,
                                        "end": 8596,
                                        "loc": {
                                          "start": {
                                            "line": 215,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 215,
                                            "column": 29
                                          }
                                        },
                                        "value": "autoconstraint",
                                        "rawValue": "autoconstraint",
                                        "raw": "'autoconstraint'"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 8598,
                                        "end": 8607,
                                        "loc": {
                                          "start": {
                                            "line": 215,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 215,
                                            "column": 40
                                          }
                                        },
                                        "value": "default",
                                        "rawValue": "default",
                                        "raw": "'default'"
                                      }
                                    ]
                                  }
                                ]
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 8631,
                      "end": 8660,
                      "loc": {
                        "start": {
                          "line": 218,
                          "column": 8
                        },
                        "end": {
                          "line": 218,
                          "column": 37
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 8635,
                          "end": 8659,
                          "loc": {
                            "start": {
                              "line": 218,
                              "column": 12
                            },
                            "end": {
                              "line": 218,
                              "column": 36
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 8635,
                            "end": 8639,
                            "loc": {
                              "start": {
                                "line": 218,
                                "column": 12
                              },
                              "end": {
                                "line": 218,
                                "column": 16
                              }
                            },
                            "name": "view"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 8642,
                            "end": 8659,
                            "loc": {
                              "start": {
                                "line": 218,
                                "column": 19
                              },
                              "end": {
                                "line": 218,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 8642,
                              "end": 8646,
                              "loc": {
                                "start": {
                                  "line": 218,
                                  "column": 19
                                },
                                "end": {
                                  "line": 218,
                                  "column": 23
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8647,
                              "end": 8659,
                              "loc": {
                                "start": {
                                  "line": 218,
                                  "column": 24
                                },
                                "end": {
                                  "line": 218,
                                  "column": 36
                                }
                              },
                              "name": "__parentView"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 8670,
                      "end": 8983,
                      "loc": {
                        "start": {
                          "line": 220,
                          "column": 8
                        },
                        "end": {
                          "line": 227,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 8674,
                        "end": 8716,
                        "loc": {
                          "start": {
                            "line": 220,
                            "column": 12
                          },
                          "end": {
                            "line": 220,
                            "column": 54
                          }
                        },
                        "left": {
                          "type": "BinaryExpression",
                          "start": 8674,
                          "end": 8694,
                          "loc": {
                            "start": {
                              "line": 220,
                              "column": 12
                            },
                            "end": {
                              "line": 220,
                              "column": 32
                            }
                          },
                          "left": {
                            "type": "Identifier",
                            "start": 8674,
                            "end": 8680,
                            "loc": {
                              "start": {
                                "line": 220,
                                "column": 12
                              },
                              "end": {
                                "line": 220,
                                "column": 18
                              }
                            },
                            "name": "action"
                          },
                          "operator": "===",
                          "right": {
                            "type": "Identifier",
                            "start": 8685,
                            "end": 8694,
                            "loc": {
                              "start": {
                                "line": 220,
                                "column": 23
                              },
                              "end": {
                                "line": 220,
                                "column": 32
                              }
                            },
                            "name": "undefined"
                          }
                        },
                        "operator": "&&",
                        "right": {
                          "type": "MemberExpression",
                          "start": 8698,
                          "end": 8716,
                          "loc": {
                            "start": {
                              "line": 220,
                              "column": 36
                            },
                            "end": {
                              "line": 220,
                              "column": 54
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 8698,
                            "end": 8702,
                            "loc": {
                              "start": {
                                "line": 220,
                                "column": 36
                              },
                              "end": {
                                "line": 220,
                                "column": 40
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 8703,
                            "end": 8716,
                            "loc": {
                              "start": {
                                "line": 220,
                                "column": 41
                              },
                              "end": {
                                "line": 220,
                                "column": 54
                              }
                            },
                            "name": "currentCursor"
                          },
                          "computed": false
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 8718,
                        "end": 8777,
                        "loc": {
                          "start": {
                            "line": 220,
                            "column": 56
                          },
                          "end": {
                            "line": 222,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 8732,
                            "end": 8767,
                            "loc": {
                              "start": {
                                "line": 221,
                                "column": 12
                              },
                              "end": {
                                "line": 221,
                                "column": 47
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 8732,
                              "end": 8766,
                              "loc": {
                                "start": {
                                  "line": 221,
                                  "column": 12
                                },
                                "end": {
                                  "line": 221,
                                  "column": 46
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 8732,
                                "end": 8746,
                                "loc": {
                                  "start": {
                                    "line": 221,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 221,
                                    "column": 26
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 8732,
                                  "end": 8736,
                                  "loc": {
                                    "start": {
                                      "line": 221,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 221,
                                      "column": 16
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8737,
                                  "end": 8746,
                                  "loc": {
                                    "start": {
                                      "line": 221,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 221,
                                      "column": 26
                                    }
                                  },
                                  "name": "setCursor"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 8747,
                                  "end": 8765,
                                  "loc": {
                                    "start": {
                                      "line": 221,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 221,
                                      "column": 45
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 8747,
                                    "end": 8751,
                                    "loc": {
                                      "start": {
                                        "line": 221,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 221,
                                        "column": 31
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8752,
                                    "end": 8765,
                                    "loc": {
                                      "start": {
                                        "line": 221,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 221,
                                        "column": 45
                                      }
                                    },
                                    "name": "currentCursor"
                                  },
                                  "computed": false
                                }
                              ]
                            }
                          }
                        ]
                      },
                      "alternate": {
                        "type": "IfStatement",
                        "start": 8783,
                        "end": 8983,
                        "loc": {
                          "start": {
                            "line": 222,
                            "column": 15
                          },
                          "end": {
                            "line": 227,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "CallExpression",
                          "start": 8787,
                          "end": 8809,
                          "loc": {
                            "start": {
                              "line": 222,
                              "column": 19
                            },
                            "end": {
                              "line": 222,
                              "column": 41
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 8787,
                            "end": 8801,
                            "loc": {
                              "start": {
                                "line": 222,
                                "column": 19
                              },
                              "end": {
                                "line": 222,
                                "column": 33
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 8787,
                              "end": 8797,
                              "loc": {
                                "start": {
                                  "line": 222,
                                  "column": 19
                                },
                                "end": {
                                  "line": 222,
                                  "column": 29
                                }
                              },
                              "name": "cursorsURL"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8798,
                              "end": 8801,
                              "loc": {
                                "start": {
                                  "line": 222,
                                  "column": 30
                                },
                                "end": {
                                  "line": 222,
                                  "column": 33
                                }
                              },
                              "name": "has"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 8802,
                              "end": 8808,
                              "loc": {
                                "start": {
                                  "line": 222,
                                  "column": 34
                                },
                                "end": {
                                  "line": 222,
                                  "column": 40
                                }
                              },
                              "name": "action"
                            }
                          ]
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 8811,
                          "end": 8927,
                          "loc": {
                            "start": {
                              "line": 222,
                              "column": 43
                            },
                            "end": {
                              "line": 225,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ExpressionStatement",
                              "start": 8825,
                              "end": 8869,
                              "loc": {
                                "start": {
                                  "line": 223,
                                  "column": 12
                                },
                                "end": {
                                  "line": 223,
                                  "column": 56
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 8825,
                                "end": 8868,
                                "loc": {
                                  "start": {
                                    "line": 223,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 223,
                                    "column": 55
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 8825,
                                  "end": 8843,
                                  "loc": {
                                    "start": {
                                      "line": 223,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 223,
                                      "column": 30
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 8825,
                                    "end": 8829,
                                    "loc": {
                                      "start": {
                                        "line": 223,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 223,
                                        "column": 16
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8830,
                                    "end": 8843,
                                    "loc": {
                                      "start": {
                                        "line": 223,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 223,
                                        "column": 30
                                      }
                                    },
                                    "name": "currentCursor"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "CallExpression",
                                  "start": 8846,
                                  "end": 8868,
                                  "loc": {
                                    "start": {
                                      "line": 223,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 223,
                                      "column": 55
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 8846,
                                    "end": 8860,
                                    "loc": {
                                      "start": {
                                        "line": 223,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 223,
                                        "column": 47
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 8846,
                                      "end": 8856,
                                      "loc": {
                                        "start": {
                                          "line": 223,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 223,
                                          "column": 43
                                        }
                                      },
                                      "name": "cursorsURL"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8857,
                                      "end": 8860,
                                      "loc": {
                                        "start": {
                                          "line": 223,
                                          "column": 44
                                        },
                                        "end": {
                                          "line": 223,
                                          "column": 47
                                        }
                                      },
                                      "name": "get"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 8861,
                                      "end": 8867,
                                      "loc": {
                                        "start": {
                                          "line": 223,
                                          "column": 48
                                        },
                                        "end": {
                                          "line": 223,
                                          "column": 54
                                        }
                                      },
                                      "name": "action"
                                    }
                                  ]
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 8882,
                              "end": 8917,
                              "loc": {
                                "start": {
                                  "line": 224,
                                  "column": 12
                                },
                                "end": {
                                  "line": 224,
                                  "column": 47
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 8882,
                                "end": 8916,
                                "loc": {
                                  "start": {
                                    "line": 224,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 224,
                                    "column": 46
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 8882,
                                  "end": 8896,
                                  "loc": {
                                    "start": {
                                      "line": 224,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 224,
                                      "column": 26
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 8882,
                                    "end": 8886,
                                    "loc": {
                                      "start": {
                                        "line": 224,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 224,
                                        "column": 16
                                      }
                                    },
                                    "name": "view"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8887,
                                    "end": 8896,
                                    "loc": {
                                      "start": {
                                        "line": 224,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 224,
                                        "column": 26
                                      }
                                    },
                                    "name": "setCursor"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "start": 8897,
                                    "end": 8915,
                                    "loc": {
                                      "start": {
                                        "line": 224,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 224,
                                        "column": 45
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 8897,
                                      "end": 8901,
                                      "loc": {
                                        "start": {
                                          "line": 224,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 224,
                                          "column": 31
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8902,
                                      "end": 8915,
                                      "loc": {
                                        "start": {
                                          "line": 224,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 224,
                                          "column": 45
                                        }
                                      },
                                      "name": "currentCursor"
                                    },
                                    "computed": false
                                  }
                                ]
                              }
                            }
                          ]
                        },
                        "alternate": {
                          "type": "BlockStatement",
                          "start": 8933,
                          "end": 8983,
                          "loc": {
                            "start": {
                              "line": 225,
                              "column": 15
                            },
                            "end": {
                              "line": 227,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ExpressionStatement",
                              "start": 8947,
                              "end": 8973,
                              "loc": {
                                "start": {
                                  "line": 226,
                                  "column": 12
                                },
                                "end": {
                                  "line": 226,
                                  "column": 38
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 8947,
                                "end": 8972,
                                "loc": {
                                  "start": {
                                    "line": 226,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 226,
                                    "column": 37
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 8947,
                                  "end": 8965,
                                  "loc": {
                                    "start": {
                                      "line": 226,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 226,
                                      "column": 30
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 8947,
                                    "end": 8951,
                                    "loc": {
                                      "start": {
                                        "line": 226,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 226,
                                        "column": 16
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8952,
                                    "end": 8965,
                                    "loc": {
                                      "start": {
                                        "line": 226,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 226,
                                        "column": 30
                                      }
                                    },
                                    "name": "currentCursor"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "Literal",
                                  "start": 8968,
                                  "end": 8972,
                                  "loc": {
                                    "start": {
                                      "line": 226,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 226,
                                      "column": 37
                                    }
                                  },
                                  "value": null,
                                  "rawValue": null,
                                  "raw": "null"
                                }
                              }
                            }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 8995,
              "end": 10081,
              "loc": {
                "start": {
                  "line": 230,
                  "column": 4
                },
                "end": {
                  "line": 256,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 8995,
                "end": 9005,
                "loc": {
                  "start": {
                    "line": 230,
                    "column": 4
                  },
                  "end": {
                    "line": 230,
                    "column": 14
                  }
                },
                "name": "chooseTool"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 9005,
                "end": 10081,
                "loc": {
                  "start": {
                    "line": 230,
                    "column": 14
                  },
                  "end": {
                    "line": 256,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 9006,
                    "end": 9014,
                    "loc": {
                      "start": {
                        "line": 230,
                        "column": 15
                      },
                      "end": {
                        "line": 230,
                        "column": 23
                      }
                    },
                    "name": "toolName"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 9016,
                  "end": 10081,
                  "loc": {
                    "start": {
                      "line": 230,
                      "column": 25
                    },
                    "end": {
                      "line": 256,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 9026,
                      "end": 9057,
                      "loc": {
                        "start": {
                          "line": 231,
                          "column": 8
                        },
                        "end": {
                          "line": 231,
                          "column": 39
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 9026,
                        "end": 9056,
                        "loc": {
                          "start": {
                            "line": 231,
                            "column": 8
                          },
                          "end": {
                            "line": 231,
                            "column": 38
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 9026,
                          "end": 9046,
                          "loc": {
                            "start": {
                              "line": 231,
                              "column": 8
                            },
                            "end": {
                              "line": 231,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 9026,
                            "end": 9030,
                            "loc": {
                              "start": {
                                "line": 231,
                                "column": 8
                              },
                              "end": {
                                "line": 231,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9031,
                            "end": 9046,
                            "loc": {
                              "start": {
                                "line": 231,
                                "column": 13
                              },
                              "end": {
                                "line": 231,
                                "column": 28
                              }
                            },
                            "name": "setActionCursor"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 9047,
                            "end": 9055,
                            "loc": {
                              "start": {
                                "line": 231,
                                "column": 29
                              },
                              "end": {
                                "line": 231,
                                "column": 37
                              }
                            },
                            "name": "toolName"
                          }
                        ]
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 9067,
                      "end": 9463,
                      "loc": {
                        "start": {
                          "line": 233,
                          "column": 8
                        },
                        "end": {
                          "line": 242,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 9071,
                        "end": 9079,
                        "loc": {
                          "start": {
                            "line": 233,
                            "column": 12
                          },
                          "end": {
                            "line": 233,
                            "column": 20
                          }
                        },
                        "name": "toolName"
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 9081,
                        "end": 9463,
                        "loc": {
                          "start": {
                            "line": 233,
                            "column": 22
                          },
                          "end": {
                            "line": 242,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 9175,
                            "end": 9315,
                            "loc": {
                              "start": {
                                "line": 235,
                                "column": 12
                              },
                              "end": {
                                "line": 237,
                                "column": 13
                              }
                            },
                            "test": {
                              "type": "LogicalExpression",
                              "start": 9179,
                              "end": 9234,
                              "loc": {
                                "start": {
                                  "line": 235,
                                  "column": 16
                                },
                                "end": {
                                  "line": 235,
                                  "column": 71
                                }
                              },
                              "left": {
                                "type": "BinaryExpression",
                                "start": 9179,
                                "end": 9199,
                                "loc": {
                                  "start": {
                                    "line": 235,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 235,
                                    "column": 36
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 9179,
                                  "end": 9187,
                                  "loc": {
                                    "start": {
                                      "line": 235,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 235,
                                      "column": 24
                                    }
                                  },
                                  "name": "toolName",
                                  "leadingComments": null
                                },
                                "operator": "===",
                                "right": {
                                  "type": "Literal",
                                  "start": 9192,
                                  "end": 9199,
                                  "loc": {
                                    "start": {
                                      "line": 235,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 235,
                                      "column": 36
                                    }
                                  },
                                  "value": "empty",
                                  "rawValue": "empty",
                                  "raw": "\"empty\""
                                },
                                "leadingComments": null
                              },
                              "operator": "&&",
                              "right": {
                                "type": "MemberExpression",
                                "start": 9203,
                                "end": 9234,
                                "loc": {
                                  "start": {
                                    "line": 235,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 235,
                                    "column": 71
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 9203,
                                  "end": 9217,
                                  "loc": {
                                    "start": {
                                      "line": 235,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 235,
                                      "column": 54
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 9203,
                                    "end": 9207,
                                    "loc": {
                                      "start": {
                                        "line": 235,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 235,
                                        "column": 44
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9208,
                                    "end": 9217,
                                    "loc": {
                                      "start": {
                                        "line": 235,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 235,
                                        "column": 54
                                      }
                                    },
                                    "name": "modelData"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9218,
                                  "end": 9234,
                                  "loc": {
                                    "start": {
                                      "line": 235,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 235,
                                      "column": 71
                                    }
                                  },
                                  "name": "incrementalLevel"
                                },
                                "computed": false
                              },
                              "leadingComments": null
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 9236,
                              "end": 9315,
                              "loc": {
                                "start": {
                                  "line": 235,
                                  "column": 73
                                },
                                "end": {
                                  "line": 237,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 9254,
                                  "end": 9292,
                                  "loc": {
                                    "start": {
                                      "line": 236,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 236,
                                      "column": 54
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 9254,
                                    "end": 9291,
                                    "loc": {
                                      "start": {
                                        "line": 236,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 236,
                                        "column": 53
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 9254,
                                      "end": 9289,
                                      "loc": {
                                        "start": {
                                          "line": 236,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 236,
                                          "column": 51
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 9254,
                                        "end": 9272,
                                        "loc": {
                                          "start": {
                                            "line": 236,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 236,
                                            "column": 34
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 9254,
                                          "end": 9258,
                                          "loc": {
                                            "start": {
                                              "line": 236,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 236,
                                              "column": 20
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 9259,
                                          "end": 9272,
                                          "loc": {
                                            "start": {
                                              "line": 236,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 236,
                                              "column": 34
                                            }
                                          },
                                          "name": "currentSketch"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9273,
                                        "end": 9289,
                                        "loc": {
                                          "start": {
                                            "line": 236,
                                            "column": 35
                                          },
                                          "end": {
                                            "line": 236,
                                            "column": 51
                                          }
                                        },
                                        "name": "solveConstraints"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  "trailingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": "async",
                                      "start": 9294,
                                      "end": 9301,
                                      "loc": {
                                        "start": {
                                          "line": 236,
                                          "column": 56
                                        },
                                        "end": {
                                          "line": 236,
                                          "column": 63
                                        }
                                      },
                                      "range": [
                                        9294,
                                        9301
                                      ]
                                    }
                                  ]
                                }
                              ]
                            },
                            "alternate": null,
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " supported toolName's are: empty point line arc polyline tangency",
                                "start": 9095,
                                "end": 9162,
                                "loc": {
                                  "start": {
                                    "line": 234,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 234,
                                    "column": 79
                                  }
                                },
                                "range": [
                                  9095,
                                  9162
                                ]
                              }
                            ]
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 9329,
                            "end": 9382,
                            "loc": {
                              "start": {
                                "line": 239,
                                "column": 12
                              },
                              "end": {
                                "line": 239,
                                "column": 65
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 9333,
                                "end": 9381,
                                "loc": {
                                  "start": {
                                    "line": 239,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 239,
                                    "column": 64
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 9333,
                                  "end": 9348,
                                  "loc": {
                                    "start": {
                                      "line": 239,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 239,
                                      "column": 31
                                    }
                                  },
                                  "name": "controlsHandler",
                                  "leadingComments": null
                                },
                                "init": {
                                  "type": "MemberExpression",
                                  "start": 9351,
                                  "end": 9381,
                                  "loc": {
                                    "start": {
                                      "line": 239,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 239,
                                      "column": 64
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 9351,
                                    "end": 9359,
                                    "loc": {
                                      "start": {
                                        "line": 239,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 239,
                                        "column": 42
                                      }
                                    },
                                    "name": "Controls"
                                  },
                                  "property": {
                                    "type": "BinaryExpression",
                                    "start": 9360,
                                    "end": 9380,
                                    "loc": {
                                      "start": {
                                        "line": 239,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 239,
                                        "column": 63
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 9360,
                                      "end": 9368,
                                      "loc": {
                                        "start": {
                                          "line": 239,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 239,
                                          "column": 51
                                        }
                                      },
                                      "name": "toolName"
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "Literal",
                                      "start": 9371,
                                      "end": 9380,
                                      "loc": {
                                        "start": {
                                          "line": 239,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 239,
                                          "column": 63
                                        }
                                      },
                                      "value": "Handler",
                                      "rawValue": "Handler",
                                      "raw": "'Handler'"
                                    }
                                  },
                                  "computed": true
                                },
                                "leadingComments": null
                              }
                            ],
                            "kind": "var",
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": "async",
                                "start": 9294,
                                "end": 9301,
                                "loc": {
                                  "start": {
                                    "line": 236,
                                    "column": 56
                                  },
                                  "end": {
                                    "line": 236,
                                    "column": 63
                                  }
                                },
                                "range": [
                                  9294,
                                  9301
                                ]
                              }
                            ]
                          },
                          {
                            "type": "IfStatement",
                            "start": 9395,
                            "end": 9453,
                            "loc": {
                              "start": {
                                "line": 240,
                                "column": 12
                              },
                              "end": {
                                "line": 241,
                                "column": 23
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 9399,
                              "end": 9428,
                              "loc": {
                                "start": {
                                  "line": 240,
                                  "column": 16
                                },
                                "end": {
                                  "line": 240,
                                  "column": 45
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 9399,
                                "end": 9414,
                                "loc": {
                                  "start": {
                                    "line": 240,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 240,
                                    "column": 31
                                  }
                                },
                                "name": "controlsHandler"
                              },
                              "operator": "===",
                              "right": {
                                "type": "Identifier",
                                "start": 9419,
                                "end": 9428,
                                "loc": {
                                  "start": {
                                    "line": 240,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 240,
                                    "column": 45
                                  }
                                },
                                "name": "undefined"
                              }
                            },
                            "consequent": {
                              "type": "ReturnStatement",
                              "start": 9446,
                              "end": 9453,
                              "loc": {
                                "start": {
                                  "line": 241,
                                  "column": 16
                                },
                                "end": {
                                  "line": 241,
                                  "column": 23
                                }
                              },
                              "argument": null
                            },
                            "alternate": null
                          }
                        ],
                        "trailingComments": null
                      },
                      "alternate": null,
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " choosing line/arc edges when drawing a polyline",
                          "start": 9473,
                          "end": 9523,
                          "loc": {
                            "start": {
                              "line": 244,
                              "column": 8
                            },
                            "end": {
                              "line": 244,
                              "column": 58
                            }
                          },
                          "range": [
                            9473,
                            9523
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 9532,
                      "end": 9764,
                      "loc": {
                        "start": {
                          "line": 245,
                          "column": 8
                        },
                        "end": {
                          "line": 247,
                          "column": 73
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 9536,
                        "end": 9600,
                        "loc": {
                          "start": {
                            "line": 245,
                            "column": 12
                          },
                          "end": {
                            "line": 245,
                            "column": 76
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 9536,
                          "end": 9564,
                          "loc": {
                            "start": {
                              "line": 245,
                              "column": 12
                            },
                            "end": {
                              "line": 245,
                              "column": 40
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 9536,
                            "end": 9540,
                            "loc": {
                              "start": {
                                "line": 245,
                                "column": 12
                              },
                              "end": {
                                "line": 245,
                                "column": 16
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9541,
                            "end": 9564,
                            "loc": {
                              "start": {
                                "line": 245,
                                "column": 17
                              },
                              "end": {
                                "line": 245,
                                "column": 40
                              }
                            },
                            "name": "__sketchControlsHandler"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "operator": "instanceof",
                        "right": {
                          "type": "MemberExpression",
                          "start": 9576,
                          "end": 9600,
                          "loc": {
                            "start": {
                              "line": 245,
                              "column": 52
                            },
                            "end": {
                              "line": 245,
                              "column": 76
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 9576,
                            "end": 9584,
                            "loc": {
                              "start": {
                                "line": 245,
                                "column": 52
                              },
                              "end": {
                                "line": 245,
                                "column": 60
                              }
                            },
                            "name": "Controls"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9585,
                            "end": 9600,
                            "loc": {
                              "start": {
                                "line": 245,
                                "column": 61
                              },
                              "end": {
                                "line": 245,
                                "column": 76
                              }
                            },
                            "name": "polylineHandler"
                          },
                          "computed": false
                        },
                        "leadingComments": null
                      },
                      "consequent": {
                        "type": "IfStatement",
                        "start": 9614,
                        "end": 9764,
                        "loc": {
                          "start": {
                            "line": 246,
                            "column": 12
                          },
                          "end": {
                            "line": 247,
                            "column": 73
                          }
                        },
                        "test": {
                          "type": "LogicalExpression",
                          "start": 9618,
                          "end": 9689,
                          "loc": {
                            "start": {
                              "line": 246,
                              "column": 16
                            },
                            "end": {
                              "line": 246,
                              "column": 87
                            }
                          },
                          "left": {
                            "type": "Identifier",
                            "start": 9618,
                            "end": 9626,
                            "loc": {
                              "start": {
                                "line": 246,
                                "column": 16
                              },
                              "end": {
                                "line": 246,
                                "column": 24
                              }
                            },
                            "name": "toolName"
                          },
                          "operator": "&&",
                          "right": {
                            "type": "LogicalExpression",
                            "start": 9631,
                            "end": 9688,
                            "loc": {
                              "start": {
                                "line": 246,
                                "column": 29
                              },
                              "end": {
                                "line": 246,
                                "column": 86
                              }
                            },
                            "left": {
                              "type": "CallExpression",
                              "start": 9631,
                              "end": 9658,
                              "loc": {
                                "start": {
                                  "line": 246,
                                  "column": 29
                                },
                                "end": {
                                  "line": 246,
                                  "column": 56
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 9631,
                                "end": 9650,
                                "loc": {
                                  "start": {
                                    "line": 246,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 246,
                                    "column": 48
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 9631,
                                  "end": 9639,
                                  "loc": {
                                    "start": {
                                      "line": 246,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 246,
                                      "column": 37
                                    }
                                  },
                                  "name": "toolName"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9640,
                                  "end": 9650,
                                  "loc": {
                                    "start": {
                                      "line": 246,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 246,
                                      "column": 48
                                    }
                                  },
                                  "name": "startsWith"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 9651,
                                  "end": 9657,
                                  "loc": {
                                    "start": {
                                      "line": 246,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 246,
                                      "column": 55
                                    }
                                  },
                                  "value": "line",
                                  "rawValue": "line",
                                  "raw": "'line'"
                                }
                              ]
                            },
                            "operator": "||",
                            "right": {
                              "type": "CallExpression",
                              "start": 9662,
                              "end": 9688,
                              "loc": {
                                "start": {
                                  "line": 246,
                                  "column": 60
                                },
                                "end": {
                                  "line": 246,
                                  "column": 86
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 9662,
                                "end": 9681,
                                "loc": {
                                  "start": {
                                    "line": 246,
                                    "column": 60
                                  },
                                  "end": {
                                    "line": 246,
                                    "column": 79
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 9662,
                                  "end": 9670,
                                  "loc": {
                                    "start": {
                                      "line": 246,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 246,
                                      "column": 68
                                    }
                                  },
                                  "name": "toolName"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9671,
                                  "end": 9681,
                                  "loc": {
                                    "start": {
                                      "line": 246,
                                      "column": 69
                                    },
                                    "end": {
                                      "line": 246,
                                      "column": 79
                                    }
                                  },
                                  "name": "startsWith"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 9682,
                                  "end": 9687,
                                  "loc": {
                                    "start": {
                                      "line": 246,
                                      "column": 80
                                    },
                                    "end": {
                                      "line": 246,
                                      "column": 85
                                    }
                                  },
                                  "value": "arc",
                                  "rawValue": "arc",
                                  "raw": "'arc'"
                                }
                              ]
                            },
                            "parenthesizedExpression": true
                          }
                        },
                        "consequent": {
                          "type": "ReturnStatement",
                          "start": 9703,
                          "end": 9764,
                          "loc": {
                            "start": {
                              "line": 247,
                              "column": 12
                            },
                            "end": {
                              "line": 247,
                              "column": 73
                            }
                          },
                          "argument": {
                            "type": "CallExpression",
                            "start": 9710,
                            "end": 9763,
                            "loc": {
                              "start": {
                                "line": 247,
                                "column": 19
                              },
                              "end": {
                                "line": 247,
                                "column": 72
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 9710,
                              "end": 9753,
                              "loc": {
                                "start": {
                                  "line": 247,
                                  "column": 19
                                },
                                "end": {
                                  "line": 247,
                                  "column": 62
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 9710,
                                "end": 9738,
                                "loc": {
                                  "start": {
                                    "line": 247,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 247,
                                    "column": 47
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 9710,
                                  "end": 9714,
                                  "loc": {
                                    "start": {
                                      "line": 247,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 247,
                                      "column": 23
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9715,
                                  "end": 9738,
                                  "loc": {
                                    "start": {
                                      "line": 247,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 247,
                                      "column": 47
                                    }
                                  },
                                  "name": "__sketchControlsHandler"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9739,
                                "end": 9753,
                                "loc": {
                                  "start": {
                                    "line": 247,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 247,
                                    "column": 62
                                  }
                                },
                                "name": "changeEdgeType"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 9754,
                                "end": 9762,
                                "loc": {
                                  "start": {
                                    "line": 247,
                                    "column": 63
                                  },
                                  "end": {
                                    "line": 247,
                                    "column": 71
                                  }
                                },
                                "name": "toolName"
                              }
                            ]
                          },
                          "trailingComments": null
                        },
                        "alternate": null,
                        "trailingComments": null
                      },
                      "alternate": null,
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " choosing line/arc edges when drawing a polyline",
                          "start": 9473,
                          "end": 9523,
                          "loc": {
                            "start": {
                              "line": 244,
                              "column": 8
                            },
                            "end": {
                              "line": 244,
                              "column": 58
                            }
                          },
                          "range": [
                            9473,
                            9523
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " ask controls handler to finish whatever it is doing",
                          "start": 9774,
                          "end": 9828,
                          "loc": {
                            "start": {
                              "line": 249,
                              "column": 8
                            },
                            "end": {
                              "line": 249,
                              "column": 62
                            }
                          },
                          "range": [
                            9774,
                            9828
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 9837,
                      "end": 9921,
                      "loc": {
                        "start": {
                          "line": 250,
                          "column": 8
                        },
                        "end": {
                          "line": 251,
                          "column": 50
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 9841,
                        "end": 9869,
                        "loc": {
                          "start": {
                            "line": 250,
                            "column": 12
                          },
                          "end": {
                            "line": 250,
                            "column": 40
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 9841,
                          "end": 9845,
                          "loc": {
                            "start": {
                              "line": 250,
                              "column": 12
                            },
                            "end": {
                              "line": 250,
                              "column": 16
                            }
                          },
                          "leadingComments": null
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 9846,
                          "end": 9869,
                          "loc": {
                            "start": {
                              "line": 250,
                              "column": 17
                            },
                            "end": {
                              "line": 250,
                              "column": 40
                            }
                          },
                          "name": "__sketchControlsHandler"
                        },
                        "computed": false,
                        "leadingComments": null
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 9883,
                        "end": 9921,
                        "loc": {
                          "start": {
                            "line": 251,
                            "column": 12
                          },
                          "end": {
                            "line": 251,
                            "column": 50
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 9883,
                          "end": 9920,
                          "loc": {
                            "start": {
                              "line": 251,
                              "column": 12
                            },
                            "end": {
                              "line": 251,
                              "column": 49
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 9883,
                            "end": 9918,
                            "loc": {
                              "start": {
                                "line": 251,
                                "column": 12
                              },
                              "end": {
                                "line": 251,
                                "column": 47
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 9883,
                              "end": 9911,
                              "loc": {
                                "start": {
                                  "line": 251,
                                  "column": 12
                                },
                                "end": {
                                  "line": 251,
                                  "column": 40
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 9883,
                                "end": 9887,
                                "loc": {
                                  "start": {
                                    "line": 251,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 251,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9888,
                                "end": 9911,
                                "loc": {
                                  "start": {
                                    "line": 251,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 251,
                                    "column": 40
                                  }
                                },
                                "name": "__sketchControlsHandler"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9912,
                              "end": 9918,
                              "loc": {
                                "start": {
                                  "line": 251,
                                  "column": 41
                                },
                                "end": {
                                  "line": 251,
                                  "column": 47
                                }
                              },
                              "name": "finish"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      },
                      "alternate": null,
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " ask controls handler to finish whatever it is doing",
                          "start": 9774,
                          "end": 9828,
                          "loc": {
                            "start": {
                              "line": 249,
                              "column": 8
                            },
                            "end": {
                              "line": 249,
                              "column": 62
                            }
                          },
                          "range": [
                            9774,
                            9828
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 9930,
                      "end": 10075,
                      "loc": {
                        "start": {
                          "line": 252,
                          "column": 8
                        },
                        "end": {
                          "line": 255,
                          "column": 48
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 9934,
                        "end": 9942,
                        "loc": {
                          "start": {
                            "line": 252,
                            "column": 12
                          },
                          "end": {
                            "line": 252,
                            "column": 20
                          }
                        },
                        "name": "toolName"
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 9956,
                        "end": 10013,
                        "loc": {
                          "start": {
                            "line": 253,
                            "column": 12
                          },
                          "end": {
                            "line": 253,
                            "column": 69
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 9956,
                          "end": 10012,
                          "loc": {
                            "start": {
                              "line": 253,
                              "column": 12
                            },
                            "end": {
                              "line": 253,
                              "column": 68
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 9956,
                            "end": 9984,
                            "loc": {
                              "start": {
                                "line": 253,
                                "column": 12
                              },
                              "end": {
                                "line": 253,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 9956,
                              "end": 9960,
                              "loc": {
                                "start": {
                                  "line": 253,
                                  "column": 12
                                },
                                "end": {
                                  "line": 253,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9961,
                              "end": 9984,
                              "loc": {
                                "start": {
                                  "line": 253,
                                  "column": 17
                                },
                                "end": {
                                  "line": 253,
                                  "column": 40
                                }
                              },
                              "name": "__sketchControlsHandler"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "NewExpression",
                            "start": 9987,
                            "end": 10012,
                            "loc": {
                              "start": {
                                "line": 253,
                                "column": 43
                              },
                              "end": {
                                "line": 253,
                                "column": 68
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 9991,
                              "end": 10006,
                              "loc": {
                                "start": {
                                  "line": 253,
                                  "column": 47
                                },
                                "end": {
                                  "line": 253,
                                  "column": 62
                                }
                              },
                              "name": "controlsHandler"
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 10007,
                                "end": 10011,
                                "loc": {
                                  "start": {
                                    "line": 253,
                                    "column": 63
                                  },
                                  "end": {
                                    "line": 253,
                                    "column": 67
                                  }
                                }
                              }
                            ]
                          }
                        }
                      },
                      "alternate": {
                        "type": "ExpressionStatement",
                        "start": 10039,
                        "end": 10075,
                        "loc": {
                          "start": {
                            "line": 255,
                            "column": 12
                          },
                          "end": {
                            "line": 255,
                            "column": 48
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 10039,
                          "end": 10074,
                          "loc": {
                            "start": {
                              "line": 255,
                              "column": 12
                            },
                            "end": {
                              "line": 255,
                              "column": 47
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 10039,
                            "end": 10067,
                            "loc": {
                              "start": {
                                "line": 255,
                                "column": 12
                              },
                              "end": {
                                "line": 255,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 10039,
                              "end": 10043,
                              "loc": {
                                "start": {
                                  "line": 255,
                                  "column": 12
                                },
                                "end": {
                                  "line": 255,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10044,
                              "end": 10067,
                              "loc": {
                                "start": {
                                  "line": 255,
                                  "column": 17
                                },
                                "end": {
                                  "line": 255,
                                  "column": 40
                                }
                              },
                              "name": "__sketchControlsHandler"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 10070,
                            "end": 10074,
                            "loc": {
                              "start": {
                                "line": 255,
                                "column": 43
                              },
                              "end": {
                                "line": 255,
                                "column": 47
                              }
                            },
                            "value": null,
                            "rawValue": null,
                            "raw": "null"
                          }
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 10087,
              "end": 10333,
              "loc": {
                "start": {
                  "line": 258,
                  "column": 4
                },
                "end": {
                  "line": 264,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 10093,
                "end": 10109,
                "loc": {
                  "start": {
                    "line": 258,
                    "column": 10
                  },
                  "end": {
                    "line": 258,
                    "column": 26
                  }
                },
                "name": "solveConstraints"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 10109,
                "end": 10333,
                "loc": {
                  "start": {
                    "line": 258,
                    "column": 26
                  },
                  "end": {
                    "line": 264,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 10112,
                  "end": 10333,
                  "loc": {
                    "start": {
                      "line": 258,
                      "column": 29
                    },
                    "end": {
                      "line": 264,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 10122,
                      "end": 10166,
                      "loc": {
                        "start": {
                          "line": 259,
                          "column": 8
                        },
                        "end": {
                          "line": 260,
                          "column": 19
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 10126,
                        "end": 10145,
                        "loc": {
                          "start": {
                            "line": 259,
                            "column": 12
                          },
                          "end": {
                            "line": 259,
                            "column": 31
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "MemberExpression",
                          "start": 10127,
                          "end": 10145,
                          "loc": {
                            "start": {
                              "line": 259,
                              "column": 13
                            },
                            "end": {
                              "line": 259,
                              "column": 31
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 10127,
                            "end": 10131,
                            "loc": {
                              "start": {
                                "line": 259,
                                "column": 13
                              },
                              "end": {
                                "line": 259,
                                "column": 17
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 10132,
                            "end": 10145,
                            "loc": {
                              "start": {
                                "line": 259,
                                "column": 18
                              },
                              "end": {
                                "line": 259,
                                "column": 31
                              }
                            },
                            "name": "currentSketch"
                          },
                          "computed": false
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 10159,
                        "end": 10166,
                        "loc": {
                          "start": {
                            "line": 260,
                            "column": 12
                          },
                          "end": {
                            "line": 260,
                            "column": 19
                          }
                        },
                        "argument": null
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 10175,
                      "end": 10232,
                      "loc": {
                        "start": {
                          "line": 261,
                          "column": 8
                        },
                        "end": {
                          "line": 261,
                          "column": 65
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 10179,
                          "end": 10231,
                          "loc": {
                            "start": {
                              "line": 261,
                              "column": 12
                            },
                            "end": {
                              "line": 261,
                              "column": 64
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 10179,
                            "end": 10185,
                            "loc": {
                              "start": {
                                "line": 261,
                                "column": 12
                              },
                              "end": {
                                "line": 261,
                                "column": 18
                              }
                            },
                            "name": "result"
                          },
                          "init": {
                            "type": "AwaitExpression",
                            "start": 10188,
                            "end": 10231,
                            "loc": {
                              "start": {
                                "line": 261,
                                "column": 21
                              },
                              "end": {
                                "line": 261,
                                "column": 64
                              }
                            },
                            "all": false,
                            "argument": {
                              "type": "CallExpression",
                              "start": 10194,
                              "end": 10231,
                              "loc": {
                                "start": {
                                  "line": 261,
                                  "column": 27
                                },
                                "end": {
                                  "line": 261,
                                  "column": 64
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 10194,
                                "end": 10229,
                                "loc": {
                                  "start": {
                                    "line": 261,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 261,
                                    "column": 62
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 10194,
                                  "end": 10212,
                                  "loc": {
                                    "start": {
                                      "line": 261,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 261,
                                      "column": 45
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 10194,
                                    "end": 10198,
                                    "loc": {
                                      "start": {
                                        "line": 261,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 261,
                                        "column": 31
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 10199,
                                    "end": 10212,
                                    "loc": {
                                      "start": {
                                        "line": 261,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 261,
                                        "column": 45
                                      }
                                    },
                                    "name": "currentSketch"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 10213,
                                  "end": 10229,
                                  "loc": {
                                    "start": {
                                      "line": 261,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 261,
                                      "column": 62
                                    }
                                  },
                                  "name": "solveConstraints"
                                },
                                "computed": false
                              },
                              "arguments": []
                            }
                          }
                        }
                      ],
                      "kind": "let",
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " result: 0 - fail, 1 - well-defined, 2 - solved?",
                          "start": 10241,
                          "end": 10291,
                          "loc": {
                            "start": {
                              "line": 262,
                              "column": 8
                            },
                            "end": {
                              "line": 262,
                              "column": 58
                            }
                          },
                          "range": [
                            10241,
                            10291
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " TODO show result somehow",
                          "start": 10300,
                          "end": 10327,
                          "loc": {
                            "start": {
                              "line": 263,
                              "column": 8
                            },
                            "end": {
                              "line": 263,
                              "column": 35
                            }
                          },
                          "range": [
                            10300,
                            10327
                          ]
                        }
                      ]
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 10339,
              "end": 10533,
              "loc": {
                "start": {
                  "line": 266,
                  "column": 4
                },
                "end": {
                  "line": 270,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 10345,
                "end": 10364,
                "loc": {
                  "start": {
                    "line": 266,
                    "column": 10
                  },
                  "end": {
                    "line": 266,
                    "column": 29
                  }
                },
                "name": "setIncrementalLevel"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 10364,
                "end": 10533,
                "loc": {
                  "start": {
                    "line": 266,
                    "column": 29
                  },
                  "end": {
                    "line": 270,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 10365,
                    "end": 10370,
                    "loc": {
                      "start": {
                        "line": 266,
                        "column": 30
                      },
                      "end": {
                        "line": 266,
                        "column": 35
                      }
                    },
                    "name": "value"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 10372,
                  "end": 10533,
                  "loc": {
                    "start": {
                      "line": 266,
                      "column": 37
                    },
                    "end": {
                      "line": 270,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 10382,
                      "end": 10423,
                      "loc": {
                        "start": {
                          "line": 267,
                          "column": 8
                        },
                        "end": {
                          "line": 267,
                          "column": 49
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 10382,
                        "end": 10422,
                        "loc": {
                          "start": {
                            "line": 267,
                            "column": 8
                          },
                          "end": {
                            "line": 267,
                            "column": 48
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 10382,
                          "end": 10414,
                          "loc": {
                            "start": {
                              "line": 267,
                              "column": 8
                            },
                            "end": {
                              "line": 267,
                              "column": 40
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 10382,
                            "end": 10396,
                            "loc": {
                              "start": {
                                "line": 267,
                                "column": 8
                              },
                              "end": {
                                "line": 267,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 10382,
                              "end": 10386,
                              "loc": {
                                "start": {
                                  "line": 267,
                                  "column": 8
                                },
                                "end": {
                                  "line": 267,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10387,
                              "end": 10396,
                              "loc": {
                                "start": {
                                  "line": 267,
                                  "column": 13
                                },
                                "end": {
                                  "line": 267,
                                  "column": 22
                                }
                              },
                              "name": "modelData"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 10397,
                            "end": 10414,
                            "loc": {
                              "start": {
                                "line": 267,
                                "column": 23
                              },
                              "end": {
                                "line": 267,
                                "column": 40
                              }
                            },
                            "name": "_incrementalLevel"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 10417,
                          "end": 10422,
                          "loc": {
                            "start": {
                              "line": 267,
                              "column": 43
                            },
                            "end": {
                              "line": 267,
                              "column": 48
                            }
                          },
                          "name": "value"
                        }
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 10432,
                      "end": 10485,
                      "loc": {
                        "start": {
                          "line": 268,
                          "column": 8
                        },
                        "end": {
                          "line": 269,
                          "column": 42
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 10436,
                        "end": 10441,
                        "loc": {
                          "start": {
                            "line": 268,
                            "column": 12
                          },
                          "end": {
                            "line": 268,
                            "column": 17
                          }
                        },
                        "name": "value"
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 10455,
                        "end": 10485,
                        "loc": {
                          "start": {
                            "line": 269,
                            "column": 12
                          },
                          "end": {
                            "line": 269,
                            "column": 42
                          }
                        },
                        "expression": {
                          "type": "AwaitExpression",
                          "start": 10455,
                          "end": 10484,
                          "loc": {
                            "start": {
                              "line": 269,
                              "column": 12
                            },
                            "end": {
                              "line": 269,
                              "column": 41
                            }
                          },
                          "all": false,
                          "argument": {
                            "type": "CallExpression",
                            "start": 10461,
                            "end": 10484,
                            "loc": {
                              "start": {
                                "line": 269,
                                "column": 18
                              },
                              "end": {
                                "line": 269,
                                "column": 41
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 10461,
                              "end": 10482,
                              "loc": {
                                "start": {
                                  "line": 269,
                                  "column": 18
                                },
                                "end": {
                                  "line": 269,
                                  "column": 39
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 10461,
                                "end": 10465,
                                "loc": {
                                  "start": {
                                    "line": 269,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 269,
                                    "column": 22
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10466,
                                "end": 10482,
                                "loc": {
                                  "start": {
                                    "line": 269,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 269,
                                    "column": 39
                                  }
                                },
                                "name": "solveConstraints"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        },
                        "trailingComments": null
                      },
                      "alternate": null,
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "note: solve constraints when turned on",
                          "start": 10487,
                          "end": 10527,
                          "loc": {
                            "start": {
                              "line": 269,
                              "column": 44
                            },
                            "end": {
                              "line": 269,
                              "column": 84
                            }
                          },
                          "range": [
                            10487,
                            10527
                          ]
                        }
                      ]
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " result: 0 - fail, 1 - well-defined, 2 - solved?",
                  "start": 10241,
                  "end": 10291,
                  "loc": {
                    "start": {
                      "line": 262,
                      "column": 8
                    },
                    "end": {
                      "line": 262,
                      "column": 58
                    }
                  },
                  "range": [
                    10241,
                    10291
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " TODO show result somehow",
                  "start": 10300,
                  "end": 10327,
                  "loc": {
                    "start": {
                      "line": 263,
                      "column": 8
                    },
                    "end": {
                      "line": 263,
                      "column": 35
                    }
                  },
                  "range": [
                    10300,
                    10327
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 10539,
              "end": 10830,
              "loc": {
                "start": {
                  "line": 272,
                  "column": 4
                },
                "end": {
                  "line": 278,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 10539,
                "end": 10556,
                "loc": {
                  "start": {
                    "line": 272,
                    "column": 4
                  },
                  "end": {
                    "line": 272,
                    "column": 21
                  }
                },
                "name": "autoconstraintAll",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 10556,
                "end": 10830,
                "loc": {
                  "start": {
                    "line": 272,
                    "column": 21
                  },
                  "end": {
                    "line": 278,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 10559,
                  "end": 10830,
                  "loc": {
                    "start": {
                      "line": 272,
                      "column": 24
                    },
                    "end": {
                      "line": 278,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 10569,
                      "end": 10635,
                      "loc": {
                        "start": {
                          "line": 273,
                          "column": 8
                        },
                        "end": {
                          "line": 273,
                          "column": 74
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 10573,
                          "end": 10634,
                          "loc": {
                            "start": {
                              "line": 273,
                              "column": 12
                            },
                            "end": {
                              "line": 273,
                              "column": 73
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 10573,
                            "end": 10588,
                            "loc": {
                              "start": {
                                "line": 273,
                                "column": 12
                              },
                              "end": {
                                "line": 273,
                                "column": 27
                              }
                            },
                            "name": "constrGenerator"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 10591,
                            "end": 10634,
                            "loc": {
                              "start": {
                                "line": 273,
                                "column": 30
                              },
                              "end": {
                                "line": 273,
                                "column": 73
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 10595,
                              "end": 10614,
                              "loc": {
                                "start": {
                                  "line": 273,
                                  "column": 34
                                },
                                "end": {
                                  "line": 273,
                                  "column": 53
                                }
                              },
                              "name": "ConstraintGenerator"
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 10615,
                                "end": 10633,
                                "loc": {
                                  "start": {
                                    "line": 273,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 273,
                                    "column": 72
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 10615,
                                  "end": 10619,
                                  "loc": {
                                    "start": {
                                      "line": 273,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 273,
                                      "column": 58
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 10620,
                                  "end": 10633,
                                  "loc": {
                                    "start": {
                                      "line": 273,
                                      "column": 59
                                    },
                                    "end": {
                                      "line": 273,
                                      "column": 72
                                    }
                                  },
                                  "name": "currentSketch"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 10644,
                      "end": 10710,
                      "loc": {
                        "start": {
                          "line": 274,
                          "column": 8
                        },
                        "end": {
                          "line": 274,
                          "column": 74
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 10648,
                          "end": 10709,
                          "loc": {
                            "start": {
                              "line": 274,
                              "column": 12
                            },
                            "end": {
                              "line": 274,
                              "column": 73
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 10648,
                            "end": 10662,
                            "loc": {
                              "start": {
                                "line": 274,
                                "column": 12
                              },
                              "end": {
                                "line": 274,
                                "column": 26
                              }
                            },
                            "name": "newConstraints"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 10665,
                            "end": 10709,
                            "loc": {
                              "start": {
                                "line": 274,
                                "column": 29
                              },
                              "end": {
                                "line": 274,
                                "column": 73
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 10665,
                              "end": 10707,
                              "loc": {
                                "start": {
                                  "line": 274,
                                  "column": 29
                                },
                                "end": {
                                  "line": 274,
                                  "column": 71
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 10665,
                                "end": 10680,
                                "loc": {
                                  "start": {
                                    "line": 274,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 274,
                                    "column": 44
                                  }
                                },
                                "name": "constrGenerator"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10681,
                                "end": 10707,
                                "loc": {
                                  "start": {
                                    "line": 274,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 274,
                                    "column": 71
                                  }
                                },
                                "name": "generateImpliedConstraints"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 10719,
                      "end": 10824,
                      "loc": {
                        "start": {
                          "line": 275,
                          "column": 8
                        },
                        "end": {
                          "line": 277,
                          "column": 10
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 10719,
                        "end": 10823,
                        "loc": {
                          "start": {
                            "line": 275,
                            "column": 8
                          },
                          "end": {
                            "line": 277,
                            "column": 9
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 10719,
                          "end": 10731,
                          "loc": {
                            "start": {
                              "line": 275,
                              "column": 8
                            },
                            "end": {
                              "line": 275,
                              "column": 20
                            }
                          },
                          "name": "trackPromise"
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 10745,
                            "end": 10813,
                            "loc": {
                              "start": {
                                "line": 276,
                                "column": 12
                              },
                              "end": {
                                "line": 276,
                                "column": 80
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 10745,
                              "end": 10775,
                              "loc": {
                                "start": {
                                  "line": 276,
                                  "column": 12
                                },
                                "end": {
                                  "line": 276,
                                  "column": 42
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 10745,
                                "end": 10763,
                                "loc": {
                                  "start": {
                                    "line": 276,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 276,
                                    "column": 30
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 10745,
                                  "end": 10749,
                                  "loc": {
                                    "start": {
                                      "line": 276,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 276,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 10750,
                                  "end": 10763,
                                  "loc": {
                                    "start": {
                                      "line": 276,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 276,
                                      "column": 30
                                    }
                                  },
                                  "name": "currentSketch"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10764,
                                "end": 10775,
                                "loc": {
                                  "start": {
                                    "line": 276,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 276,
                                    "column": 42
                                  }
                                },
                                "name": "addToSketch"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 10776,
                                "end": 10790,
                                "loc": {
                                  "start": {
                                    "line": 276,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 276,
                                    "column": 57
                                  }
                                },
                                "name": "newConstraints"
                              },
                              {
                                "type": "ObjectExpression",
                                "start": 10792,
                                "end": 10812,
                                "loc": {
                                  "start": {
                                    "line": 276,
                                    "column": 59
                                  },
                                  "end": {
                                    "line": 276,
                                    "column": 79
                                  }
                                },
                                "properties": [
                                  {
                                    "type": "Property",
                                    "start": 10793,
                                    "end": 10811,
                                    "loc": {
                                      "start": {
                                        "line": 276,
                                        "column": 60
                                      },
                                      "end": {
                                        "line": 276,
                                        "column": 78
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 10793,
                                      "end": 10805,
                                      "loc": {
                                        "start": {
                                          "line": 276,
                                          "column": 60
                                        },
                                        "end": {
                                          "line": 276,
                                          "column": 72
                                        }
                                      },
                                      "name": "updateSketch"
                                    },
                                    "value": {
                                      "type": "Literal",
                                      "start": 10807,
                                      "end": 10811,
                                      "loc": {
                                        "start": {
                                          "line": 276,
                                          "column": 74
                                        },
                                        "end": {
                                          "line": 276,
                                          "column": 78
                                        }
                                      },
                                      "value": true,
                                      "rawValue": true,
                                      "raw": "true"
                                    },
                                    "kind": "init"
                                  }
                                ]
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": "note: solve constraints when turned on",
                  "start": 10487,
                  "end": 10527,
                  "loc": {
                    "start": {
                      "line": 269,
                      "column": 44
                    },
                    "end": {
                      "line": 269,
                      "column": 84
                    }
                  },
                  "range": [
                    10487,
                    10527
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 10836,
              "end": 13708,
              "loc": {
                "start": {
                  "line": 280,
                  "column": 4
                },
                "end": {
                  "line": 360,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 10836,
                "end": 10856,
                "loc": {
                  "start": {
                    "line": 280,
                    "column": 4
                  },
                  "end": {
                    "line": 280,
                    "column": 24
                  }
                },
                "name": "moveUnderConstraints"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 10856,
                "end": 13708,
                "loc": {
                  "start": {
                    "line": 280,
                    "column": 24
                  },
                  "end": {
                    "line": 360,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 10857,
                    "end": 10863,
                    "loc": {
                      "start": {
                        "line": 280,
                        "column": 25
                      },
                      "end": {
                        "line": 280,
                        "column": 31
                      }
                    },
                    "name": "object"
                  },
                  {
                    "type": "Identifier",
                    "start": 10865,
                    "end": 10871,
                    "loc": {
                      "start": {
                        "line": 280,
                        "column": 33
                      },
                      "end": {
                        "line": 280,
                        "column": 39
                      }
                    },
                    "name": "newPnt"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 10873,
                  "end": 13708,
                  "loc": {
                    "start": {
                      "line": 280,
                      "column": 41
                    },
                    "end": {
                      "line": 360,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "FunctionDeclaration",
                      "start": 10883,
                      "end": 11149,
                      "loc": {
                        "start": {
                          "line": 281,
                          "column": 8
                        },
                        "end": {
                          "line": 285,
                          "column": 9
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 10892,
                        "end": 10910,
                        "loc": {
                          "start": {
                            "line": 281,
                            "column": 17
                          },
                          "end": {
                            "line": 281,
                            "column": 35
                          }
                        },
                        "name": "updateSketchStates"
                      },
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 10911,
                          "end": 10918,
                          "loc": {
                            "start": {
                              "line": 281,
                              "column": 36
                            },
                            "end": {
                              "line": 281,
                              "column": 43
                            }
                          },
                          "name": "objects"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 10920,
                        "end": 11149,
                        "loc": {
                          "start": {
                            "line": 281,
                            "column": 45
                          },
                          "end": {
                            "line": 285,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 10934,
                            "end": 10978,
                            "loc": {
                              "start": {
                                "line": 282,
                                "column": 12
                              },
                              "end": {
                                "line": 282,
                                "column": 56
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 10934,
                              "end": 10977,
                              "loc": {
                                "start": {
                                  "line": 282,
                                  "column": 12
                                },
                                "end": {
                                  "line": 282,
                                  "column": 55
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 10934,
                                "end": 10954,
                                "loc": {
                                  "start": {
                                    "line": 282,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 282,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 10934,
                                  "end": 10951,
                                  "loc": {
                                    "start": {
                                      "line": 282,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 282,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 10934,
                                    "end": 10938,
                                    "loc": {
                                      "start": {
                                        "line": 282,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 282,
                                        "column": 16
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 10939,
                                    "end": 10951,
                                    "loc": {
                                      "start": {
                                        "line": 282,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 282,
                                        "column": 29
                                      }
                                    },
                                    "name": "sketchStates"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Literal",
                                  "start": 10952,
                                  "end": 10953,
                                  "loc": {
                                    "start": {
                                      "line": 282,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 282,
                                      "column": 31
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                "computed": true
                              },
                              "right": {
                                "type": "MemberExpression",
                                "start": 10957,
                                "end": 10977,
                                "loc": {
                                  "start": {
                                    "line": 282,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 282,
                                    "column": 55
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 10957,
                                  "end": 10974,
                                  "loc": {
                                    "start": {
                                      "line": 282,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 282,
                                      "column": 52
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 10957,
                                    "end": 10961,
                                    "loc": {
                                      "start": {
                                        "line": 282,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 282,
                                        "column": 39
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 10962,
                                    "end": 10974,
                                    "loc": {
                                      "start": {
                                        "line": 282,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 282,
                                        "column": 52
                                      }
                                    },
                                    "name": "sketchStates"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Literal",
                                  "start": 10975,
                                  "end": 10976,
                                  "loc": {
                                    "start": {
                                      "line": 282,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 282,
                                      "column": 54
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                "computed": true
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 10991,
                            "end": 11044,
                            "loc": {
                              "start": {
                                "line": 283,
                                "column": 12
                              },
                              "end": {
                                "line": 283,
                                "column": 65
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 10991,
                              "end": 11043,
                              "loc": {
                                "start": {
                                  "line": 283,
                                  "column": 12
                                },
                                "end": {
                                  "line": 283,
                                  "column": 64
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 10991,
                                "end": 11011,
                                "loc": {
                                  "start": {
                                    "line": 283,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 283,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 10991,
                                  "end": 11008,
                                  "loc": {
                                    "start": {
                                      "line": 283,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 283,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 10991,
                                    "end": 10995,
                                    "loc": {
                                      "start": {
                                        "line": 283,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 283,
                                        "column": 16
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 10996,
                                    "end": 11008,
                                    "loc": {
                                      "start": {
                                        "line": 283,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 283,
                                        "column": 29
                                      }
                                    },
                                    "name": "sketchStates"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Literal",
                                  "start": 11009,
                                  "end": 11010,
                                  "loc": {
                                    "start": {
                                      "line": 283,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 283,
                                      "column": 31
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                "computed": true
                              },
                              "right": {
                                "type": "CallExpression",
                                "start": 11014,
                                "end": 11043,
                                "loc": {
                                  "start": {
                                    "line": 283,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 283,
                                    "column": 64
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 11014,
                                  "end": 11041,
                                  "loc": {
                                    "start": {
                                      "line": 283,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 283,
                                      "column": 62
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 11014,
                                    "end": 11032,
                                    "loc": {
                                      "start": {
                                        "line": 283,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 283,
                                        "column": 53
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 11014,
                                      "end": 11018,
                                      "loc": {
                                        "start": {
                                          "line": 283,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 283,
                                          "column": 39
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 11019,
                                      "end": 11032,
                                      "loc": {
                                        "start": {
                                          "line": 283,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 283,
                                          "column": 53
                                        }
                                      },
                                      "name": "currentSketch"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11033,
                                    "end": 11041,
                                    "loc": {
                                      "start": {
                                        "line": 283,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 283,
                                        "column": 62
                                      }
                                    },
                                    "name": "getState"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 11057,
                            "end": 11139,
                            "loc": {
                              "start": {
                                "line": 284,
                                "column": 12
                              },
                              "end": {
                                "line": 284,
                                "column": 94
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 11057,
                              "end": 11138,
                              "loc": {
                                "start": {
                                  "line": 284,
                                  "column": 12
                                },
                                "end": {
                                  "line": 284,
                                  "column": 93
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 11057,
                                "end": 11071,
                                "loc": {
                                  "start": {
                                    "line": 284,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 284,
                                    "column": 26
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 11057,
                                  "end": 11061,
                                  "loc": {
                                    "start": {
                                      "line": 284,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 284,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11062,
                                  "end": 11071,
                                  "loc": {
                                    "start": {
                                      "line": 284,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 284,
                                      "column": 26
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "CallExpression",
                                "start": 11074,
                                "end": 11138,
                                "loc": {
                                  "start": {
                                    "line": 284,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 284,
                                    "column": 93
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 11074,
                                  "end": 11119,
                                  "loc": {
                                    "start": {
                                      "line": 284,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 284,
                                      "column": 74
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 11074,
                                    "end": 11092,
                                    "loc": {
                                      "start": {
                                        "line": 284,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 284,
                                        "column": 47
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 11074,
                                      "end": 11078,
                                      "loc": {
                                        "start": {
                                          "line": 284,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 284,
                                          "column": 33
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 11079,
                                      "end": 11092,
                                      "loc": {
                                        "start": {
                                          "line": 284,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 284,
                                          "column": 47
                                        }
                                      },
                                      "name": "currentSketch"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11093,
                                    "end": 11119,
                                    "loc": {
                                      "start": {
                                        "line": 284,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 284,
                                        "column": 74
                                      }
                                    },
                                    "name": "getStateLinearContinuation"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "start": 11120,
                                    "end": 11137,
                                    "loc": {
                                      "start": {
                                        "line": 284,
                                        "column": 75
                                      },
                                      "end": {
                                        "line": 284,
                                        "column": 92
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 11120,
                                      "end": 11124,
                                      "loc": {
                                        "start": {
                                          "line": 284,
                                          "column": 75
                                        },
                                        "end": {
                                          "line": 284,
                                          "column": 79
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 11125,
                                      "end": 11137,
                                      "loc": {
                                        "start": {
                                          "line": 284,
                                          "column": 80
                                        },
                                        "end": {
                                          "line": 284,
                                          "column": 92
                                        }
                                      },
                                      "name": "sketchStates"
                                    },
                                    "computed": false
                                  }
                                ]
                              }
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "FunctionDeclaration",
                      "start": 11159,
                      "end": 11296,
                      "loc": {
                        "start": {
                          "line": 287,
                          "column": 8
                        },
                        "end": {
                          "line": 290,
                          "column": 9
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 11168,
                        "end": 11185,
                        "loc": {
                          "start": {
                            "line": 287,
                            "column": 17
                          },
                          "end": {
                            "line": 287,
                            "column": 34
                          }
                        },
                        "name": "updateMouseStates"
                      },
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [],
                      "body": {
                        "type": "BlockStatement",
                        "start": 11188,
                        "end": 11296,
                        "loc": {
                          "start": {
                            "line": 287,
                            "column": 37
                          },
                          "end": {
                            "line": 290,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 11202,
                            "end": 11244,
                            "loc": {
                              "start": {
                                "line": 288,
                                "column": 12
                              },
                              "end": {
                                "line": 288,
                                "column": 54
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 11202,
                              "end": 11243,
                              "loc": {
                                "start": {
                                  "line": 288,
                                  "column": 12
                                },
                                "end": {
                                  "line": 288,
                                  "column": 53
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 11202,
                                "end": 11221,
                                "loc": {
                                  "start": {
                                    "line": 288,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 288,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 11202,
                                  "end": 11218,
                                  "loc": {
                                    "start": {
                                      "line": 288,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 288,
                                      "column": 28
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 11202,
                                    "end": 11206,
                                    "loc": {
                                      "start": {
                                        "line": 288,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 288,
                                        "column": 16
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11207,
                                    "end": 11218,
                                    "loc": {
                                      "start": {
                                        "line": 288,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 288,
                                        "column": 28
                                      }
                                    },
                                    "name": "mouseStates"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Literal",
                                  "start": 11219,
                                  "end": 11220,
                                  "loc": {
                                    "start": {
                                      "line": 288,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 288,
                                      "column": 30
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                "computed": true
                              },
                              "right": {
                                "type": "MemberExpression",
                                "start": 11224,
                                "end": 11243,
                                "loc": {
                                  "start": {
                                    "line": 288,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 288,
                                    "column": 53
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 11224,
                                  "end": 11240,
                                  "loc": {
                                    "start": {
                                      "line": 288,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 288,
                                      "column": 50
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 11224,
                                    "end": 11228,
                                    "loc": {
                                      "start": {
                                        "line": 288,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 288,
                                        "column": 38
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11229,
                                    "end": 11240,
                                    "loc": {
                                      "start": {
                                        "line": 288,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 288,
                                        "column": 50
                                      }
                                    },
                                    "name": "mouseStates"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Literal",
                                  "start": 11241,
                                  "end": 11242,
                                  "loc": {
                                    "start": {
                                      "line": 288,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 288,
                                      "column": 52
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                "computed": true
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 11257,
                            "end": 11286,
                            "loc": {
                              "start": {
                                "line": 289,
                                "column": 12
                              },
                              "end": {
                                "line": 289,
                                "column": 41
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 11257,
                              "end": 11285,
                              "loc": {
                                "start": {
                                  "line": 289,
                                  "column": 12
                                },
                                "end": {
                                  "line": 289,
                                  "column": 40
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 11257,
                                "end": 11276,
                                "loc": {
                                  "start": {
                                    "line": 289,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 289,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 11257,
                                  "end": 11273,
                                  "loc": {
                                    "start": {
                                      "line": 289,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 289,
                                      "column": 28
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 11257,
                                    "end": 11261,
                                    "loc": {
                                      "start": {
                                        "line": 289,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 289,
                                        "column": 16
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11262,
                                    "end": 11273,
                                    "loc": {
                                      "start": {
                                        "line": 289,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 289,
                                        "column": 28
                                      }
                                    },
                                    "name": "mouseStates"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Literal",
                                  "start": 11274,
                                  "end": 11275,
                                  "loc": {
                                    "start": {
                                      "line": 289,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 289,
                                      "column": 30
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                "computed": true
                              },
                              "right": {
                                "type": "Identifier",
                                "start": 11279,
                                "end": 11285,
                                "loc": {
                                  "start": {
                                    "line": 289,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 289,
                                    "column": 40
                                  }
                                },
                                "name": "newPnt"
                              }
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "FunctionDeclaration",
                      "start": 11306,
                      "end": 11555,
                      "loc": {
                        "start": {
                          "line": 292,
                          "column": 8
                        },
                        "end": {
                          "line": 299,
                          "column": 9
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 11315,
                        "end": 11333,
                        "loc": {
                          "start": {
                            "line": 292,
                            "column": 17
                          },
                          "end": {
                            "line": 292,
                            "column": 35
                          }
                        },
                        "name": "getAffectedObjects"
                      },
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 11334,
                          "end": 11340,
                          "loc": {
                            "start": {
                              "line": 292,
                              "column": 36
                            },
                            "end": {
                              "line": 292,
                              "column": 42
                            }
                          },
                          "name": "object"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 11342,
                        "end": 11555,
                        "loc": {
                          "start": {
                            "line": 292,
                            "column": 44
                          },
                          "end": {
                            "line": 299,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 11356,
                            "end": 11373,
                            "loc": {
                              "start": {
                                "line": 293,
                                "column": 12
                              },
                              "end": {
                                "line": 293,
                                "column": 29
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 11360,
                                "end": 11372,
                                "loc": {
                                  "start": {
                                    "line": 293,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 293,
                                    "column": 28
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 11360,
                                  "end": 11367,
                                  "loc": {
                                    "start": {
                                      "line": 293,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 293,
                                      "column": 23
                                    }
                                  },
                                  "name": "objects"
                                },
                                "init": {
                                  "type": "ArrayExpression",
                                  "start": 11370,
                                  "end": 11372,
                                  "loc": {
                                    "start": {
                                      "line": 293,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 293,
                                      "column": 28
                                    }
                                  },
                                  "elements": []
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 11387,
                            "end": 11517,
                            "loc": {
                              "start": {
                                "line": 295,
                                "column": 12
                              },
                              "end": {
                                "line": 297,
                                "column": 15
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 11387,
                              "end": 11516,
                              "loc": {
                                "start": {
                                  "line": 295,
                                  "column": 12
                                },
                                "end": {
                                  "line": 297,
                                  "column": 14
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 11387,
                                "end": 11416,
                                "loc": {
                                  "start": {
                                    "line": 295,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 295,
                                    "column": 41
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 11387,
                                  "end": 11393,
                                  "loc": {
                                    "start": {
                                      "line": 295,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 295,
                                      "column": 18
                                    }
                                  },
                                  "name": "Sketch"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11394,
                                  "end": 11416,
                                  "loc": {
                                    "start": {
                                      "line": 295,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 295,
                                      "column": 41
                                    }
                                  },
                                  "name": "ForObjectsWithChildren"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 11417,
                                  "end": 11423,
                                  "loc": {
                                    "start": {
                                      "line": 295,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 295,
                                      "column": 48
                                    }
                                  },
                                  "name": "object"
                                },
                                {
                                  "type": "FunctionExpression",
                                  "start": 11425,
                                  "end": 11515,
                                  "loc": {
                                    "start": {
                                      "line": 295,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 297,
                                      "column": 13
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 11434,
                                      "end": 11437,
                                      "loc": {
                                        "start": {
                                          "line": 295,
                                          "column": 59
                                        },
                                        "end": {
                                          "line": 295,
                                          "column": 62
                                        }
                                      },
                                      "name": "arg"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 11439,
                                    "end": 11515,
                                    "loc": {
                                      "start": {
                                        "line": 295,
                                        "column": 64
                                      },
                                      "end": {
                                        "line": 297,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "IfStatement",
                                        "start": 11457,
                                        "end": 11501,
                                        "loc": {
                                          "start": {
                                            "line": 296,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 296,
                                            "column": 60
                                          }
                                        },
                                        "test": {
                                          "type": "BinaryExpression",
                                          "start": 11461,
                                          "end": 11481,
                                          "loc": {
                                            "start": {
                                              "line": 296,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 296,
                                              "column": 40
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 11461,
                                            "end": 11464,
                                            "loc": {
                                              "start": {
                                                "line": 296,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 296,
                                                "column": 23
                                              }
                                            },
                                            "name": "arg"
                                          },
                                          "operator": "instanceof",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 11476,
                                            "end": 11481,
                                            "loc": {
                                              "start": {
                                                "line": 296,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 296,
                                                "column": 40
                                              }
                                            },
                                            "name": "Point"
                                          }
                                        },
                                        "consequent": {
                                          "type": "ExpressionStatement",
                                          "start": 11483,
                                          "end": 11501,
                                          "loc": {
                                            "start": {
                                              "line": 296,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 296,
                                              "column": 60
                                            }
                                          },
                                          "expression": {
                                            "type": "CallExpression",
                                            "start": 11483,
                                            "end": 11500,
                                            "loc": {
                                              "start": {
                                                "line": 296,
                                                "column": 42
                                              },
                                              "end": {
                                                "line": 296,
                                                "column": 59
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 11483,
                                              "end": 11495,
                                              "loc": {
                                                "start": {
                                                  "line": 296,
                                                  "column": 42
                                                },
                                                "end": {
                                                  "line": 296,
                                                  "column": 54
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 11483,
                                                "end": 11490,
                                                "loc": {
                                                  "start": {
                                                    "line": 296,
                                                    "column": 42
                                                  },
                                                  "end": {
                                                    "line": 296,
                                                    "column": 49
                                                  }
                                                },
                                                "name": "objects"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 11491,
                                                "end": 11495,
                                                "loc": {
                                                  "start": {
                                                    "line": 296,
                                                    "column": 50
                                                  },
                                                  "end": {
                                                    "line": 296,
                                                    "column": 54
                                                  }
                                                },
                                                "name": "push"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 11496,
                                                "end": 11499,
                                                "loc": {
                                                  "start": {
                                                    "line": 296,
                                                    "column": 55
                                                  },
                                                  "end": {
                                                    "line": 296,
                                                    "column": 58
                                                  }
                                                },
                                                "name": "arg"
                                              }
                                            ]
                                          }
                                        },
                                        "alternate": null
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 11530,
                            "end": 11545,
                            "loc": {
                              "start": {
                                "line": 298,
                                "column": 12
                              },
                              "end": {
                                "line": 298,
                                "column": 27
                              }
                            },
                            "argument": {
                              "type": "Identifier",
                              "start": 11537,
                              "end": 11544,
                              "loc": {
                                "start": {
                                  "line": 298,
                                  "column": 19
                                },
                                "end": {
                                  "line": 298,
                                  "column": 26
                                }
                              },
                              "name": "objects"
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "FunctionDeclaration",
                      "start": 11565,
                      "end": 12874,
                      "loc": {
                        "start": {
                          "line": 301,
                          "column": 8
                        },
                        "end": {
                          "line": 336,
                          "column": 9
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 11574,
                        "end": 11588,
                        "loc": {
                          "start": {
                            "line": 301,
                            "column": 17
                          },
                          "end": {
                            "line": 301,
                            "column": 31
                          }
                        },
                        "name": "getConstraints"
                      },
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 11589,
                          "end": 11595,
                          "loc": {
                            "start": {
                              "line": 301,
                              "column": 32
                            },
                            "end": {
                              "line": 301,
                              "column": 38
                            }
                          },
                          "name": "object"
                        },
                        {
                          "type": "Identifier",
                          "start": 11597,
                          "end": 11603,
                          "loc": {
                            "start": {
                              "line": 301,
                              "column": 40
                            },
                            "end": {
                              "line": 301,
                              "column": 46
                            }
                          },
                          "name": "sketch"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 11605,
                        "end": 12874,
                        "loc": {
                          "start": {
                            "line": 301,
                            "column": 48
                          },
                          "end": {
                            "line": 336,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 11619,
                            "end": 11629,
                            "loc": {
                              "start": {
                                "line": 302,
                                "column": 12
                              },
                              "end": {
                                "line": 302,
                                "column": 22
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 11623,
                                "end": 11628,
                                "loc": {
                                  "start": {
                                    "line": 302,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 302,
                                    "column": 21
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 11623,
                                  "end": 11628,
                                  "loc": {
                                    "start": {
                                      "line": 302,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 302,
                                      "column": 21
                                    }
                                  },
                                  "name": "moved"
                                },
                                "init": null
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "IfStatement",
                            "start": 11642,
                            "end": 12220,
                            "loc": {
                              "start": {
                                "line": 303,
                                "column": 12
                              },
                              "end": {
                                "line": 315,
                                "column": 13
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 11646,
                              "end": 11690,
                              "loc": {
                                "start": {
                                  "line": 303,
                                  "column": 16
                                },
                                "end": {
                                  "line": 303,
                                  "column": 60
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 11646,
                                "end": 11671,
                                "loc": {
                                  "start": {
                                    "line": 303,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 303,
                                    "column": 41
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 11646,
                                  "end": 11659,
                                  "loc": {
                                    "start": {
                                      "line": 303,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 303,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 11646,
                                    "end": 11652,
                                    "loc": {
                                      "start": {
                                        "line": 303,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 303,
                                        "column": 22
                                      }
                                    },
                                    "name": "object"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11653,
                                    "end": 11659,
                                    "loc": {
                                      "start": {
                                        "line": 303,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 303,
                                        "column": 29
                                      }
                                    },
                                    "name": "parent"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11660,
                                  "end": 11671,
                                  "loc": {
                                    "start": {
                                      "line": 303,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 303,
                                      "column": 41
                                    }
                                  },
                                  "name": "constructor"
                                },
                                "computed": false
                              },
                              "operator": "===",
                              "right": {
                                "type": "MemberExpression",
                                "start": 11676,
                                "end": 11690,
                                "loc": {
                                  "start": {
                                    "line": 303,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 303,
                                    "column": 60
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 11676,
                                  "end": 11681,
                                  "loc": {
                                    "start": {
                                      "line": 303,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 303,
                                      "column": 51
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11682,
                                  "end": 11690,
                                  "loc": {
                                    "start": {
                                      "line": 303,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 303,
                                      "column": 60
                                    }
                                  },
                                  "name": "Object3D"
                                },
                                "computed": false
                              }
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 11692,
                              "end": 11854,
                              "loc": {
                                "start": {
                                  "line": 303,
                                  "column": 62
                                },
                                "end": {
                                  "line": 307,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 11710,
                                  "end": 11748,
                                  "loc": {
                                    "start": {
                                      "line": 304,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 304,
                                      "column": 54
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 11710,
                                    "end": 11747,
                                    "loc": {
                                      "start": {
                                        "line": 304,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 304,
                                        "column": 53
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 11710,
                                      "end": 11715,
                                      "loc": {
                                        "start": {
                                          "line": 304,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 304,
                                          "column": 21
                                        }
                                      },
                                      "name": "moved"
                                    },
                                    "right": {
                                      "type": "CallExpression",
                                      "start": 11719,
                                      "end": 11747,
                                      "loc": {
                                        "start": {
                                          "line": 304,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 304,
                                          "column": 53
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 11719,
                                        "end": 11739,
                                        "loc": {
                                          "start": {
                                            "line": 304,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 304,
                                            "column": 45
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 11719,
                                          "end": 11732,
                                          "loc": {
                                            "start": {
                                              "line": 304,
                                              "column": 25
                                            },
                                            "end": {
                                              "line": 304,
                                              "column": 38
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 11719,
                                            "end": 11725,
                                            "loc": {
                                              "start": {
                                                "line": 304,
                                                "column": 25
                                              },
                                              "end": {
                                                "line": 304,
                                                "column": 31
                                              }
                                            },
                                            "name": "object"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 11726,
                                            "end": 11732,
                                            "loc": {
                                              "start": {
                                                "line": 304,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 304,
                                                "column": 38
                                              }
                                            },
                                            "name": "points"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 11733,
                                          "end": 11739,
                                          "loc": {
                                            "start": {
                                              "line": 304,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 304,
                                              "column": 45
                                            }
                                          },
                                          "name": "concat"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 11740,
                                          "end": 11746,
                                          "loc": {
                                            "start": {
                                              "line": 304,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 304,
                                              "column": 52
                                            }
                                          },
                                          "name": "object"
                                        }
                                      ]
                                    }
                                  }
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 11765,
                                  "end": 11840,
                                  "loc": {
                                    "start": {
                                      "line": 305,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 306,
                                      "column": 51
                                    }
                                  },
                                  "test": {
                                    "type": "MemberExpression",
                                    "start": 11769,
                                    "end": 11787,
                                    "loc": {
                                      "start": {
                                        "line": 305,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 305,
                                        "column": 38
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 11769,
                                      "end": 11775,
                                      "loc": {
                                        "start": {
                                          "line": 305,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 305,
                                          "column": 26
                                        }
                                      },
                                      "name": "object"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 11776,
                                      "end": 11787,
                                      "loc": {
                                        "start": {
                                          "line": 305,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 305,
                                          "column": 38
                                        }
                                      },
                                      "name": "centerPoint"
                                    },
                                    "computed": false
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 11809,
                                    "end": 11840,
                                    "loc": {
                                      "start": {
                                        "line": 306,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 306,
                                        "column": 51
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 11809,
                                      "end": 11839,
                                      "loc": {
                                        "start": {
                                          "line": 306,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 306,
                                          "column": 50
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 11809,
                                        "end": 11819,
                                        "loc": {
                                          "start": {
                                            "line": 306,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 306,
                                            "column": 30
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 11809,
                                          "end": 11814,
                                          "loc": {
                                            "start": {
                                              "line": 306,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 306,
                                              "column": 25
                                            }
                                          },
                                          "name": "moved"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 11815,
                                          "end": 11819,
                                          "loc": {
                                            "start": {
                                              "line": 306,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 306,
                                              "column": 30
                                            }
                                          },
                                          "name": "push"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "MemberExpression",
                                          "start": 11820,
                                          "end": 11838,
                                          "loc": {
                                            "start": {
                                              "line": 306,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 306,
                                              "column": 49
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 11820,
                                            "end": 11826,
                                            "loc": {
                                              "start": {
                                                "line": 306,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 306,
                                                "column": 37
                                              }
                                            },
                                            "name": "object"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 11827,
                                            "end": 11838,
                                            "loc": {
                                              "start": {
                                                "line": 306,
                                                "column": 38
                                              },
                                              "end": {
                                                "line": 306,
                                                "column": 49
                                              }
                                            },
                                            "name": "centerPoint"
                                          },
                                          "computed": false
                                        }
                                      ]
                                    }
                                  },
                                  "alternate": null
                                }
                              ]
                            },
                            "alternate": {
                              "type": "BlockStatement",
                              "start": 11860,
                              "end": 12220,
                              "loc": {
                                "start": {
                                  "line": 307,
                                  "column": 19
                                },
                                "end": {
                                  "line": 315,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 11878,
                                  "end": 12206,
                                  "loc": {
                                    "start": {
                                      "line": 308,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 314,
                                      "column": 41
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 11882,
                                    "end": 11911,
                                    "loc": {
                                      "start": {
                                        "line": 308,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 308,
                                        "column": 49
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 11882,
                                      "end": 11895,
                                      "loc": {
                                        "start": {
                                          "line": 308,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 308,
                                          "column": 33
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 11882,
                                        "end": 11888,
                                        "loc": {
                                          "start": {
                                            "line": 308,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 308,
                                            "column": 26
                                          }
                                        },
                                        "name": "object"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 11889,
                                        "end": 11895,
                                        "loc": {
                                          "start": {
                                            "line": 308,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 308,
                                            "column": 33
                                          }
                                        },
                                        "name": "parent"
                                      },
                                      "computed": false
                                    },
                                    "operator": "instanceof",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 11907,
                                      "end": 11911,
                                      "loc": {
                                        "start": {
                                          "line": 308,
                                          "column": 45
                                        },
                                        "end": {
                                          "line": 308,
                                          "column": 49
                                        }
                                      },
                                      "name": "Line"
                                    }
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 11933,
                                    "end": 11965,
                                    "loc": {
                                      "start": {
                                        "line": 309,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 309,
                                        "column": 52
                                      }
                                    },
                                    "expression": {
                                      "type": "AssignmentExpression",
                                      "start": 11933,
                                      "end": 11964,
                                      "loc": {
                                        "start": {
                                          "line": 309,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 309,
                                          "column": 51
                                        }
                                      },
                                      "operator": "=",
                                      "left": {
                                        "type": "Identifier",
                                        "start": 11933,
                                        "end": 11938,
                                        "loc": {
                                          "start": {
                                            "line": 309,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 309,
                                            "column": 25
                                          }
                                        },
                                        "name": "moved"
                                      },
                                      "right": {
                                        "type": "ArrayExpression",
                                        "start": 11941,
                                        "end": 11964,
                                        "loc": {
                                          "start": {
                                            "line": 309,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 309,
                                            "column": 51
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "Identifier",
                                            "start": 11942,
                                            "end": 11948,
                                            "loc": {
                                              "start": {
                                                "line": 309,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 309,
                                                "column": 35
                                              }
                                            },
                                            "name": "object"
                                          },
                                          {
                                            "type": "MemberExpression",
                                            "start": 11950,
                                            "end": 11963,
                                            "loc": {
                                              "start": {
                                                "line": 309,
                                                "column": 37
                                              },
                                              "end": {
                                                "line": 309,
                                                "column": 50
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 11950,
                                              "end": 11956,
                                              "loc": {
                                                "start": {
                                                  "line": 309,
                                                  "column": 37
                                                },
                                                "end": {
                                                  "line": 309,
                                                  "column": 43
                                                }
                                              },
                                              "name": "object"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 11957,
                                              "end": 11963,
                                              "loc": {
                                                "start": {
                                                  "line": 309,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 309,
                                                  "column": 50
                                                }
                                              },
                                              "name": "parent"
                                            },
                                            "computed": false
                                          }
                                        ]
                                      }
                                    }
                                  },
                                  "alternate": {
                                    "type": "IfStatement",
                                    "start": 11987,
                                    "end": 12206,
                                    "loc": {
                                      "start": {
                                        "line": 310,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 314,
                                        "column": 41
                                      }
                                    },
                                    "test": {
                                      "type": "BinaryExpression",
                                      "start": 11991,
                                      "end": 12019,
                                      "loc": {
                                        "start": {
                                          "line": 310,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 310,
                                          "column": 53
                                        }
                                      },
                                      "left": {
                                        "type": "MemberExpression",
                                        "start": 11991,
                                        "end": 12004,
                                        "loc": {
                                          "start": {
                                            "line": 310,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 310,
                                            "column": 38
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 11991,
                                          "end": 11997,
                                          "loc": {
                                            "start": {
                                              "line": 310,
                                              "column": 25
                                            },
                                            "end": {
                                              "line": 310,
                                              "column": 31
                                            }
                                          },
                                          "name": "object"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 11998,
                                          "end": 12004,
                                          "loc": {
                                            "start": {
                                              "line": 310,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 310,
                                              "column": 38
                                            }
                                          },
                                          "name": "parent"
                                        },
                                        "computed": false
                                      },
                                      "operator": "instanceof",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 12016,
                                        "end": 12019,
                                        "loc": {
                                          "start": {
                                            "line": 310,
                                            "column": 50
                                          },
                                          "end": {
                                            "line": 310,
                                            "column": 53
                                          }
                                        },
                                        "name": "Arc"
                                      }
                                    },
                                    "consequent": {
                                      "type": "IfStatement",
                                      "start": 12041,
                                      "end": 12206,
                                      "loc": {
                                        "start": {
                                          "line": 311,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 314,
                                          "column": 41
                                        }
                                      },
                                      "test": {
                                        "type": "BinaryExpression",
                                        "start": 12045,
                                        "end": 12081,
                                        "loc": {
                                          "start": {
                                            "line": 311,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 311,
                                            "column": 60
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 12045,
                                          "end": 12051,
                                          "loc": {
                                            "start": {
                                              "line": 311,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 311,
                                              "column": 30
                                            }
                                          },
                                          "name": "object"
                                        },
                                        "operator": "===",
                                        "right": {
                                          "type": "MemberExpression",
                                          "start": 12056,
                                          "end": 12081,
                                          "loc": {
                                            "start": {
                                              "line": 311,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 311,
                                              "column": 60
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 12056,
                                            "end": 12069,
                                            "loc": {
                                              "start": {
                                                "line": 311,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 311,
                                                "column": 48
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 12056,
                                              "end": 12062,
                                              "loc": {
                                                "start": {
                                                  "line": 311,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 311,
                                                  "column": 41
                                                }
                                              },
                                              "name": "object"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 12063,
                                              "end": 12069,
                                              "loc": {
                                                "start": {
                                                  "line": 311,
                                                  "column": 42
                                                },
                                                "end": {
                                                  "line": 311,
                                                  "column": 48
                                                }
                                              },
                                              "name": "parent"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 12070,
                                            "end": 12081,
                                            "loc": {
                                              "start": {
                                                "line": 311,
                                                "column": 49
                                              },
                                              "end": {
                                                "line": 311,
                                                "column": 60
                                              }
                                            },
                                            "name": "centerPoint"
                                          },
                                          "computed": false
                                        }
                                      },
                                      "consequent": {
                                        "type": "ExpressionStatement",
                                        "start": 12107,
                                        "end": 12139,
                                        "loc": {
                                          "start": {
                                            "line": 312,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 312,
                                            "column": 56
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 12107,
                                          "end": 12138,
                                          "loc": {
                                            "start": {
                                              "line": 312,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 312,
                                              "column": 55
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "Identifier",
                                            "start": 12107,
                                            "end": 12112,
                                            "loc": {
                                              "start": {
                                                "line": 312,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 312,
                                                "column": 29
                                              }
                                            },
                                            "name": "moved"
                                          },
                                          "right": {
                                            "type": "ArrayExpression",
                                            "start": 12115,
                                            "end": 12138,
                                            "loc": {
                                              "start": {
                                                "line": 312,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 312,
                                                "column": 55
                                              }
                                            },
                                            "elements": [
                                              {
                                                "type": "Identifier",
                                                "start": 12116,
                                                "end": 12122,
                                                "loc": {
                                                  "start": {
                                                    "line": 312,
                                                    "column": 33
                                                  },
                                                  "end": {
                                                    "line": 312,
                                                    "column": 39
                                                  }
                                                },
                                                "name": "object"
                                              },
                                              {
                                                "type": "MemberExpression",
                                                "start": 12124,
                                                "end": 12137,
                                                "loc": {
                                                  "start": {
                                                    "line": 312,
                                                    "column": 41
                                                  },
                                                  "end": {
                                                    "line": 312,
                                                    "column": 54
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 12124,
                                                  "end": 12130,
                                                  "loc": {
                                                    "start": {
                                                      "line": 312,
                                                      "column": 41
                                                    },
                                                    "end": {
                                                      "line": 312,
                                                      "column": 47
                                                    }
                                                  },
                                                  "name": "object"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 12131,
                                                  "end": 12137,
                                                  "loc": {
                                                    "start": {
                                                      "line": 312,
                                                      "column": 48
                                                    },
                                                    "end": {
                                                      "line": 312,
                                                      "column": 54
                                                    }
                                                  },
                                                  "name": "parent"
                                                },
                                                "computed": false
                                              }
                                            ]
                                          }
                                        }
                                      },
                                      "alternate": {
                                        "type": "ExpressionStatement",
                                        "start": 12189,
                                        "end": 12206,
                                        "loc": {
                                          "start": {
                                            "line": 314,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 314,
                                            "column": 41
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 12189,
                                          "end": 12205,
                                          "loc": {
                                            "start": {
                                              "line": 314,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 314,
                                              "column": 40
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "Identifier",
                                            "start": 12189,
                                            "end": 12194,
                                            "loc": {
                                              "start": {
                                                "line": 314,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 314,
                                                "column": 29
                                              }
                                            },
                                            "name": "moved"
                                          },
                                          "right": {
                                            "type": "ArrayExpression",
                                            "start": 12197,
                                            "end": 12205,
                                            "loc": {
                                              "start": {
                                                "line": 314,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 314,
                                                "column": 40
                                              }
                                            },
                                            "elements": [
                                              {
                                                "type": "Identifier",
                                                "start": 12198,
                                                "end": 12204,
                                                "loc": {
                                                  "start": {
                                                    "line": 314,
                                                    "column": 33
                                                  },
                                                  "end": {
                                                    "line": 314,
                                                    "column": 39
                                                  }
                                                },
                                                "name": "object"
                                              }
                                            ]
                                          }
                                        }
                                      }
                                    },
                                    "alternate": null
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 12234,
                            "end": 12263,
                            "loc": {
                              "start": {
                                "line": 317,
                                "column": 12
                              },
                              "end": {
                                "line": 317,
                                "column": 41
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 12238,
                                "end": 12262,
                                "loc": {
                                  "start": {
                                    "line": 317,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 317,
                                    "column": 40
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 12238,
                                  "end": 12257,
                                  "loc": {
                                    "start": {
                                      "line": 317,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 317,
                                      "column": 35
                                    }
                                  },
                                  "name": "affectedConstraints"
                                },
                                "init": {
                                  "type": "ArrayExpression",
                                  "start": 12260,
                                  "end": 12262,
                                  "loc": {
                                    "start": {
                                      "line": 317,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 317,
                                      "column": 40
                                    }
                                  },
                                  "elements": []
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 12277,
                            "end": 12306,
                            "loc": {
                              "start": {
                                "line": 319,
                                "column": 12
                              },
                              "end": {
                                "line": 319,
                                "column": 41
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 12281,
                                "end": 12305,
                                "loc": {
                                  "start": {
                                    "line": 319,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 319,
                                    "column": 40
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 12281,
                                  "end": 12300,
                                  "loc": {
                                    "start": {
                                      "line": 319,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 319,
                                      "column": 35
                                    }
                                  },
                                  "name": "constraintsOnSketch"
                                },
                                "init": {
                                  "type": "ArrayExpression",
                                  "start": 12303,
                                  "end": 12305,
                                  "loc": {
                                    "start": {
                                      "line": 319,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 319,
                                      "column": 40
                                    }
                                  },
                                  "elements": []
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 12319,
                            "end": 12483,
                            "loc": {
                              "start": {
                                "line": 320,
                                "column": 12
                              },
                              "end": {
                                "line": 323,
                                "column": 11
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 12319,
                              "end": 12482,
                              "loc": {
                                "start": {
                                  "line": 320,
                                  "column": 12
                                },
                                "end": {
                                  "line": 323,
                                  "column": 10
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 12319,
                                "end": 12354,
                                "loc": {
                                  "start": {
                                    "line": 320,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 320,
                                    "column": 47
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 12319,
                                  "end": 12346,
                                  "loc": {
                                    "start": {
                                      "line": 320,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 320,
                                      "column": 39
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 12319,
                                    "end": 12344,
                                    "loc": {
                                      "start": {
                                        "line": 320,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 320,
                                        "column": 37
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 12319,
                                      "end": 12325,
                                      "loc": {
                                        "start": {
                                          "line": 320,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 320,
                                          "column": 18
                                        }
                                      },
                                      "name": "sketch"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 12326,
                                      "end": 12344,
                                      "loc": {
                                        "start": {
                                          "line": 320,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 320,
                                          "column": 37
                                        }
                                      },
                                      "name": "getObjectsOnSketch"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12347,
                                  "end": 12354,
                                  "loc": {
                                    "start": {
                                      "line": 320,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 320,
                                      "column": 47
                                    }
                                  },
                                  "name": "forEach"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ArrowFunctionExpression",
                                  "start": 12355,
                                  "end": 12481,
                                  "loc": {
                                    "start": {
                                      "line": 320,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 323,
                                      "column": 9
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 12355,
                                      "end": 12361,
                                      "loc": {
                                        "start": {
                                          "line": 320,
                                          "column": 48
                                        },
                                        "end": {
                                          "line": 320,
                                          "column": 54
                                        }
                                      },
                                      "name": "object"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 12365,
                                    "end": 12481,
                                    "loc": {
                                      "start": {
                                        "line": 320,
                                        "column": 58
                                      },
                                      "end": {
                                        "line": 323,
                                        "column": 9
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "IfStatement",
                                        "start": 12383,
                                        "end": 12471,
                                        "loc": {
                                          "start": {
                                            "line": 321,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 322,
                                            "column": 49
                                          }
                                        },
                                        "test": {
                                          "type": "BinaryExpression",
                                          "start": 12387,
                                          "end": 12420,
                                          "loc": {
                                            "start": {
                                              "line": 321,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 321,
                                              "column": 53
                                            }
                                          },
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 12387,
                                            "end": 12405,
                                            "loc": {
                                              "start": {
                                                "line": 321,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 321,
                                                "column": 38
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 12387,
                                              "end": 12393,
                                              "loc": {
                                                "start": {
                                                  "line": 321,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 321,
                                                  "column": 26
                                                }
                                              },
                                              "name": "object"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 12394,
                                              "end": 12405,
                                              "loc": {
                                                "start": {
                                                  "line": 321,
                                                  "column": 27
                                                },
                                                "end": {
                                                  "line": 321,
                                                  "column": 38
                                                }
                                              },
                                              "name": "constructor"
                                            },
                                            "computed": false
                                          },
                                          "operator": "===",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 12410,
                                            "end": 12420,
                                            "loc": {
                                              "start": {
                                                "line": 321,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 321,
                                                "column": 53
                                              }
                                            },
                                            "name": "Constraint"
                                          }
                                        },
                                        "consequent": {
                                          "type": "ExpressionStatement",
                                          "start": 12438,
                                          "end": 12471,
                                          "loc": {
                                            "start": {
                                              "line": 322,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 322,
                                              "column": 49
                                            }
                                          },
                                          "expression": {
                                            "type": "CallExpression",
                                            "start": 12438,
                                            "end": 12470,
                                            "loc": {
                                              "start": {
                                                "line": 322,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 322,
                                                "column": 48
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 12438,
                                              "end": 12462,
                                              "loc": {
                                                "start": {
                                                  "line": 322,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 322,
                                                  "column": 40
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 12438,
                                                "end": 12457,
                                                "loc": {
                                                  "start": {
                                                    "line": 322,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 322,
                                                    "column": 35
                                                  }
                                                },
                                                "name": "constraintsOnSketch"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 12458,
                                                "end": 12462,
                                                "loc": {
                                                  "start": {
                                                    "line": 322,
                                                    "column": 36
                                                  },
                                                  "end": {
                                                    "line": 322,
                                                    "column": 40
                                                  }
                                                },
                                                "name": "push"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 12463,
                                                "end": 12469,
                                                "loc": {
                                                  "start": {
                                                    "line": 322,
                                                    "column": 41
                                                  },
                                                  "end": {
                                                    "line": 322,
                                                    "column": 47
                                                  }
                                                },
                                                "name": "object"
                                              }
                                            ]
                                          }
                                        },
                                        "alternate": null
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "IfStatement",
                            "start": 12497,
                            "end": 12578,
                            "loc": {
                              "start": {
                                "line": 325,
                                "column": 12
                              },
                              "end": {
                                "line": 326,
                                "column": 43
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 12501,
                              "end": 12533,
                              "loc": {
                                "start": {
                                  "line": 325,
                                  "column": 16
                                },
                                "end": {
                                  "line": 325,
                                  "column": 48
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 12501,
                                "end": 12527,
                                "loc": {
                                  "start": {
                                    "line": 325,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 325,
                                    "column": 42
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 12501,
                                  "end": 12520,
                                  "loc": {
                                    "start": {
                                      "line": 325,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 325,
                                      "column": 35
                                    }
                                  },
                                  "name": "constraintsOnSketch"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12521,
                                  "end": 12527,
                                  "loc": {
                                    "start": {
                                      "line": 325,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 325,
                                      "column": 42
                                    }
                                  },
                                  "name": "length"
                                },
                                "computed": false
                              },
                              "operator": "===",
                              "right": {
                                "type": "Literal",
                                "start": 12532,
                                "end": 12533,
                                "loc": {
                                  "start": {
                                    "line": 325,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 325,
                                    "column": 48
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              }
                            },
                            "consequent": {
                              "type": "ReturnStatement",
                              "start": 12551,
                              "end": 12578,
                              "loc": {
                                "start": {
                                  "line": 326,
                                  "column": 16
                                },
                                "end": {
                                  "line": 326,
                                  "column": 43
                                }
                              },
                              "argument": {
                                "type": "Identifier",
                                "start": 12558,
                                "end": 12577,
                                "loc": {
                                  "start": {
                                    "line": 326,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 326,
                                    "column": 42
                                  }
                                },
                                "name": "affectedConstraints"
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 12592,
                            "end": 12823,
                            "loc": {
                              "start": {
                                "line": 328,
                                "column": 12
                              },
                              "end": {
                                "line": 333,
                                "column": 15
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 12592,
                              "end": 12822,
                              "loc": {
                                "start": {
                                  "line": 328,
                                  "column": 12
                                },
                                "end": {
                                  "line": 333,
                                  "column": 14
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 12592,
                                "end": 12619,
                                "loc": {
                                  "start": {
                                    "line": 328,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 328,
                                    "column": 39
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 12592,
                                  "end": 12611,
                                  "loc": {
                                    "start": {
                                      "line": 328,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 328,
                                      "column": 31
                                    }
                                  },
                                  "name": "constraintsOnSketch"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12612,
                                  "end": 12619,
                                  "loc": {
                                    "start": {
                                      "line": 328,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 328,
                                      "column": 39
                                    }
                                  },
                                  "name": "forEach"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ArrowFunctionExpression",
                                  "start": 12620,
                                  "end": 12821,
                                  "loc": {
                                    "start": {
                                      "line": 328,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 333,
                                      "column": 13
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 12620,
                                      "end": 12630,
                                      "loc": {
                                        "start": {
                                          "line": 328,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 328,
                                          "column": 50
                                        }
                                      },
                                      "name": "constraint"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 12634,
                                    "end": 12821,
                                    "loc": {
                                      "start": {
                                        "line": 328,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 333,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 12652,
                                        "end": 12807,
                                        "loc": {
                                          "start": {
                                            "line": 329,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 332,
                                            "column": 15
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 12652,
                                          "end": 12806,
                                          "loc": {
                                            "start": {
                                              "line": 329,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 332,
                                              "column": 14
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 12652,
                                            "end": 12665,
                                            "loc": {
                                              "start": {
                                                "line": 329,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 329,
                                                "column": 29
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 12652,
                                              "end": 12657,
                                              "loc": {
                                                "start": {
                                                  "line": 329,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 329,
                                                  "column": 21
                                                }
                                              },
                                              "name": "moved"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 12658,
                                              "end": 12665,
                                              "loc": {
                                                "start": {
                                                  "line": 329,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 329,
                                                  "column": 29
                                                }
                                              },
                                              "name": "forEach"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "ArrowFunctionExpression",
                                              "start": 12666,
                                              "end": 12805,
                                              "loc": {
                                                "start": {
                                                  "line": 329,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 332,
                                                  "column": 13
                                                }
                                              },
                                              "id": null,
                                              "generator": false,
                                              "expression": false,
                                              "async": false,
                                              "params": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 12666,
                                                  "end": 12672,
                                                  "loc": {
                                                    "start": {
                                                      "line": 329,
                                                      "column": 30
                                                    },
                                                    "end": {
                                                      "line": 329,
                                                      "column": 36
                                                    }
                                                  },
                                                  "name": "object"
                                                }
                                              ],
                                              "body": {
                                                "type": "BlockStatement",
                                                "start": 12676,
                                                "end": 12805,
                                                "loc": {
                                                  "start": {
                                                    "line": 329,
                                                    "column": 40
                                                  },
                                                  "end": {
                                                    "line": 332,
                                                    "column": 13
                                                  }
                                                },
                                                "body": [
                                                  {
                                                    "type": "IfStatement",
                                                    "start": 12694,
                                                    "end": 12791,
                                                    "loc": {
                                                      "start": {
                                                        "line": 330,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 331,
                                                        "column": 53
                                                      }
                                                    },
                                                    "test": {
                                                      "type": "BinaryExpression",
                                                      "start": 12698,
                                                      "end": 12736,
                                                      "loc": {
                                                        "start": {
                                                          "line": 330,
                                                          "column": 20
                                                        },
                                                        "end": {
                                                          "line": 330,
                                                          "column": 58
                                                        }
                                                      },
                                                      "left": {
                                                        "type": "CallExpression",
                                                        "start": 12698,
                                                        "end": 12729,
                                                        "loc": {
                                                          "start": {
                                                            "line": 330,
                                                            "column": 20
                                                          },
                                                          "end": {
                                                            "line": 330,
                                                            "column": 51
                                                          }
                                                        },
                                                        "callee": {
                                                          "type": "MemberExpression",
                                                          "start": 12698,
                                                          "end": 12721,
                                                          "loc": {
                                                            "start": {
                                                              "line": 330,
                                                              "column": 20
                                                            },
                                                            "end": {
                                                              "line": 330,
                                                              "column": 43
                                                            }
                                                          },
                                                          "object": {
                                                            "type": "MemberExpression",
                                                            "start": 12698,
                                                            "end": 12713,
                                                            "loc": {
                                                              "start": {
                                                                "line": 330,
                                                                "column": 20
                                                              },
                                                              "end": {
                                                                "line": 330,
                                                                "column": 35
                                                              }
                                                            },
                                                            "object": {
                                                              "type": "Identifier",
                                                              "start": 12698,
                                                              "end": 12708,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 330,
                                                                  "column": 20
                                                                },
                                                                "end": {
                                                                  "line": 330,
                                                                  "column": 30
                                                                }
                                                              },
                                                              "name": "constraint"
                                                            },
                                                            "property": {
                                                              "type": "Identifier",
                                                              "start": 12709,
                                                              "end": 12713,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 330,
                                                                  "column": 31
                                                                },
                                                                "end": {
                                                                  "line": 330,
                                                                  "column": 35
                                                                }
                                                              },
                                                              "name": "args"
                                                            },
                                                            "computed": false
                                                          },
                                                          "property": {
                                                            "type": "Identifier",
                                                            "start": 12714,
                                                            "end": 12721,
                                                            "loc": {
                                                              "start": {
                                                                "line": 330,
                                                                "column": 36
                                                              },
                                                              "end": {
                                                                "line": 330,
                                                                "column": 43
                                                              }
                                                            },
                                                            "name": "indexOf"
                                                          },
                                                          "computed": false
                                                        },
                                                        "arguments": [
                                                          {
                                                            "type": "Identifier",
                                                            "start": 12722,
                                                            "end": 12728,
                                                            "loc": {
                                                              "start": {
                                                                "line": 330,
                                                                "column": 44
                                                              },
                                                              "end": {
                                                                "line": 330,
                                                                "column": 50
                                                              }
                                                            },
                                                            "name": "object"
                                                          }
                                                        ]
                                                      },
                                                      "operator": "!==",
                                                      "right": {
                                                        "type": "UnaryExpression",
                                                        "start": 12734,
                                                        "end": 12736,
                                                        "loc": {
                                                          "start": {
                                                            "line": 330,
                                                            "column": 56
                                                          },
                                                          "end": {
                                                            "line": 330,
                                                            "column": 58
                                                          }
                                                        },
                                                        "operator": "-",
                                                        "prefix": true,
                                                        "argument": {
                                                          "type": "Literal",
                                                          "start": 12735,
                                                          "end": 12736,
                                                          "loc": {
                                                            "start": {
                                                              "line": 330,
                                                              "column": 57
                                                            },
                                                            "end": {
                                                              "line": 330,
                                                              "column": 58
                                                            }
                                                          },
                                                          "value": 1,
                                                          "rawValue": 1,
                                                          "raw": "1"
                                                        }
                                                      }
                                                    },
                                                    "consequent": {
                                                      "type": "ExpressionStatement",
                                                      "start": 12754,
                                                      "end": 12791,
                                                      "loc": {
                                                        "start": {
                                                          "line": 331,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 331,
                                                          "column": 53
                                                        }
                                                      },
                                                      "expression": {
                                                        "type": "CallExpression",
                                                        "start": 12754,
                                                        "end": 12790,
                                                        "loc": {
                                                          "start": {
                                                            "line": 331,
                                                            "column": 16
                                                          },
                                                          "end": {
                                                            "line": 331,
                                                            "column": 52
                                                          }
                                                        },
                                                        "callee": {
                                                          "type": "MemberExpression",
                                                          "start": 12754,
                                                          "end": 12778,
                                                          "loc": {
                                                            "start": {
                                                              "line": 331,
                                                              "column": 16
                                                            },
                                                            "end": {
                                                              "line": 331,
                                                              "column": 40
                                                            }
                                                          },
                                                          "object": {
                                                            "type": "Identifier",
                                                            "start": 12754,
                                                            "end": 12773,
                                                            "loc": {
                                                              "start": {
                                                                "line": 331,
                                                                "column": 16
                                                              },
                                                              "end": {
                                                                "line": 331,
                                                                "column": 35
                                                              }
                                                            },
                                                            "name": "affectedConstraints"
                                                          },
                                                          "property": {
                                                            "type": "Identifier",
                                                            "start": 12774,
                                                            "end": 12778,
                                                            "loc": {
                                                              "start": {
                                                                "line": 331,
                                                                "column": 36
                                                              },
                                                              "end": {
                                                                "line": 331,
                                                                "column": 40
                                                              }
                                                            },
                                                            "name": "push"
                                                          },
                                                          "computed": false
                                                        },
                                                        "arguments": [
                                                          {
                                                            "type": "Identifier",
                                                            "start": 12779,
                                                            "end": 12789,
                                                            "loc": {
                                                              "start": {
                                                                "line": 331,
                                                                "column": 41
                                                              },
                                                              "end": {
                                                                "line": 331,
                                                                "column": 51
                                                              }
                                                            },
                                                            "name": "constraint"
                                                          }
                                                        ]
                                                      }
                                                    },
                                                    "alternate": null
                                                  }
                                                ]
                                              }
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 12837,
                            "end": 12864,
                            "loc": {
                              "start": {
                                "line": 335,
                                "column": 12
                              },
                              "end": {
                                "line": 335,
                                "column": 39
                              }
                            },
                            "argument": {
                              "type": "Identifier",
                              "start": 12844,
                              "end": 12863,
                              "loc": {
                                "start": {
                                  "line": 335,
                                  "column": 19
                                },
                                "end": {
                                  "line": 335,
                                  "column": 38
                                }
                              },
                              "name": "affectedConstraints"
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 12884,
                      "end": 12928,
                      "loc": {
                        "start": {
                          "line": 338,
                          "column": 8
                        },
                        "end": {
                          "line": 339,
                          "column": 19
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 12888,
                        "end": 12907,
                        "loc": {
                          "start": {
                            "line": 338,
                            "column": 12
                          },
                          "end": {
                            "line": 338,
                            "column": 31
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "MemberExpression",
                          "start": 12889,
                          "end": 12907,
                          "loc": {
                            "start": {
                              "line": 338,
                              "column": 13
                            },
                            "end": {
                              "line": 338,
                              "column": 31
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 12889,
                            "end": 12893,
                            "loc": {
                              "start": {
                                "line": 338,
                                "column": 13
                              },
                              "end": {
                                "line": 338,
                                "column": 17
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12894,
                            "end": 12907,
                            "loc": {
                              "start": {
                                "line": 338,
                                "column": 18
                              },
                              "end": {
                                "line": 338,
                                "column": 31
                              }
                            },
                            "name": "currentSketch"
                          },
                          "computed": false
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 12921,
                        "end": 12928,
                        "loc": {
                          "start": {
                            "line": 339,
                            "column": 12
                          },
                          "end": {
                            "line": 339,
                            "column": 19
                          }
                        },
                        "argument": null
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 12938,
                      "end": 12979,
                      "loc": {
                        "start": {
                          "line": 341,
                          "column": 8
                        },
                        "end": {
                          "line": 341,
                          "column": 49
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12942,
                          "end": 12978,
                          "loc": {
                            "start": {
                              "line": 341,
                              "column": 12
                            },
                            "end": {
                              "line": 341,
                              "column": 48
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12942,
                            "end": 12949,
                            "loc": {
                              "start": {
                                "line": 341,
                                "column": 12
                              },
                              "end": {
                                "line": 341,
                                "column": 19
                              }
                            },
                            "name": "objects"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 12952,
                            "end": 12978,
                            "loc": {
                              "start": {
                                "line": 341,
                                "column": 22
                              },
                              "end": {
                                "line": 341,
                                "column": 48
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 12952,
                              "end": 12970,
                              "loc": {
                                "start": {
                                  "line": 341,
                                  "column": 22
                                },
                                "end": {
                                  "line": 341,
                                  "column": 40
                                }
                              },
                              "name": "getAffectedObjects"
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 12971,
                                "end": 12977,
                                "loc": {
                                  "start": {
                                    "line": 341,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 341,
                                    "column": 47
                                  }
                                },
                                "name": "object"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 12989,
                      "end": 13036,
                      "loc": {
                        "start": {
                          "line": 343,
                          "column": 8
                        },
                        "end": {
                          "line": 343,
                          "column": 55
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 12993,
                        "end": 13027,
                        "loc": {
                          "start": {
                            "line": 343,
                            "column": 12
                          },
                          "end": {
                            "line": 343,
                            "column": 46
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 12993,
                          "end": 13011,
                          "loc": {
                            "start": {
                              "line": 343,
                              "column": 12
                            },
                            "end": {
                              "line": 343,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 12993,
                            "end": 12997,
                            "loc": {
                              "start": {
                                "line": 343,
                                "column": 12
                              },
                              "end": {
                                "line": 343,
                                "column": 16
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12998,
                            "end": 13011,
                            "loc": {
                              "start": {
                                "line": 343,
                                "column": 17
                              },
                              "end": {
                                "line": 343,
                                "column": 30
                              }
                            },
                            "name": "currentSketch"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13012,
                          "end": 13027,
                          "loc": {
                            "start": {
                              "line": 343,
                              "column": 31
                            },
                            "end": {
                              "line": 343,
                              "column": 46
                            }
                          },
                          "name": "solveInProgress"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 13029,
                        "end": 13036,
                        "loc": {
                          "start": {
                            "line": 343,
                            "column": 48
                          },
                          "end": {
                            "line": 343,
                            "column": 55
                          }
                        },
                        "argument": null
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13045,
                      "end": 13087,
                      "loc": {
                        "start": {
                          "line": 344,
                          "column": 8
                        },
                        "end": {
                          "line": 344,
                          "column": 50
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 13045,
                        "end": 13086,
                        "loc": {
                          "start": {
                            "line": 344,
                            "column": 8
                          },
                          "end": {
                            "line": 344,
                            "column": 49
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 13045,
                          "end": 13079,
                          "loc": {
                            "start": {
                              "line": 344,
                              "column": 8
                            },
                            "end": {
                              "line": 344,
                              "column": 42
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 13045,
                            "end": 13063,
                            "loc": {
                              "start": {
                                "line": 344,
                                "column": 8
                              },
                              "end": {
                                "line": 344,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 13045,
                              "end": 13049,
                              "loc": {
                                "start": {
                                  "line": 344,
                                  "column": 8
                                },
                                "end": {
                                  "line": 344,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13050,
                              "end": 13063,
                              "loc": {
                                "start": {
                                  "line": 344,
                                  "column": 13
                                },
                                "end": {
                                  "line": 344,
                                  "column": 26
                                }
                              },
                              "name": "currentSketch"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13064,
                            "end": 13079,
                            "loc": {
                              "start": {
                                "line": 344,
                                "column": 27
                              },
                              "end": {
                                "line": 344,
                                "column": 42
                              }
                            },
                            "name": "solveInProgress"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 13082,
                          "end": 13086,
                          "loc": {
                            "start": {
                              "line": 344,
                              "column": 45
                            },
                            "end": {
                              "line": 344,
                              "column": 49
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " hack: prevent multiple concurrent requests to the server",
                          "start": 13088,
                          "end": 13147,
                          "loc": {
                            "start": {
                              "line": 344,
                              "column": 51
                            },
                            "end": {
                              "line": 344,
                              "column": 110
                            }
                          },
                          "range": [
                            13088,
                            13147
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13157,
                      "end": 13186,
                      "loc": {
                        "start": {
                          "line": 346,
                          "column": 8
                        },
                        "end": {
                          "line": 346,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13157,
                        "end": 13185,
                        "loc": {
                          "start": {
                            "line": 346,
                            "column": 8
                          },
                          "end": {
                            "line": 346,
                            "column": 36
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13157,
                          "end": 13179,
                          "loc": {
                            "start": {
                              "line": 346,
                              "column": 8
                            },
                            "end": {
                              "line": 346,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 13157,
                            "end": 13174,
                            "loc": {
                              "start": {
                                "line": 346,
                                "column": 8
                              },
                              "end": {
                                "line": 346,
                                "column": 25
                              }
                            },
                            "name": "updateMouseStates",
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13175,
                            "end": 13179,
                            "loc": {
                              "start": {
                                "line": 346,
                                "column": 26
                              },
                              "end": {
                                "line": 346,
                                "column": 30
                              }
                            },
                            "name": "call"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 13180,
                            "end": 13184,
                            "loc": {
                              "start": {
                                "line": 346,
                                "column": 31
                              },
                              "end": {
                                "line": 346,
                                "column": 35
                              }
                            }
                          }
                        ],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " hack: prevent multiple concurrent requests to the server",
                          "start": 13088,
                          "end": 13147,
                          "loc": {
                            "start": {
                              "line": 344,
                              "column": 51
                            },
                            "end": {
                              "line": 344,
                              "column": 110
                            }
                          },
                          "range": [
                            13088,
                            13147
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 13195,
                      "end": 13677,
                      "loc": {
                        "start": {
                          "line": 347,
                          "column": 8
                        },
                        "end": {
                          "line": 358,
                          "column": 11
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 13199,
                          "end": 13676,
                          "loc": {
                            "start": {
                              "line": 347,
                              "column": 12
                            },
                            "end": {
                              "line": 358,
                              "column": 10
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 13199,
                            "end": 13200,
                            "loc": {
                              "start": {
                                "line": 347,
                                "column": 12
                              },
                              "end": {
                                "line": 347,
                                "column": 13
                              }
                            },
                            "name": "p"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 13203,
                            "end": 13676,
                            "loc": {
                              "start": {
                                "line": 347,
                                "column": 16
                              },
                              "end": {
                                "line": 358,
                                "column": 10
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13203,
                              "end": 13601,
                              "loc": {
                                "start": {
                                  "line": 347,
                                  "column": 16
                                },
                                "end": {
                                  "line": 356,
                                  "column": 16
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 13203,
                                "end": 13595,
                                "loc": {
                                  "start": {
                                    "line": 347,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 356,
                                    "column": 10
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 13203,
                                  "end": 13468,
                                  "loc": {
                                    "start": {
                                      "line": 347,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 353,
                                      "column": 14
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 13203,
                                    "end": 13463,
                                    "loc": {
                                      "start": {
                                        "line": 347,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 353,
                                        "column": 9
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 13203,
                                      "end": 13386,
                                      "loc": {
                                        "start": {
                                          "line": 347,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 351,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 13203,
                                        "end": 13381,
                                        "loc": {
                                          "start": {
                                            "line": 347,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 351,
                                            "column": 30
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 13203,
                                          "end": 13368,
                                          "loc": {
                                            "start": {
                                              "line": 347,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 351,
                                              "column": 17
                                            }
                                          },
                                          "object": {
                                            "type": "CallExpression",
                                            "start": 13203,
                                            "end": 13360,
                                            "loc": {
                                              "start": {
                                                "line": 347,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 351,
                                                "column": 9
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 13203,
                                              "end": 13222,
                                              "loc": {
                                                "start": {
                                                  "line": 347,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 347,
                                                  "column": 35
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 13203,
                                                "end": 13210,
                                                "loc": {
                                                  "start": {
                                                    "line": 347,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 347,
                                                    "column": 23
                                                  }
                                                },
                                                "name": "Interop"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 13211,
                                                "end": 13222,
                                                "loc": {
                                                  "start": {
                                                    "line": 347,
                                                    "column": 24
                                                  },
                                                  "end": {
                                                    "line": 347,
                                                    "column": 35
                                                  }
                                                },
                                                "name": "MoveObjects"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "MemberExpression",
                                                "start": 13236,
                                                "end": 13254,
                                                "loc": {
                                                  "start": {
                                                    "line": 348,
                                                    "column": 12
                                                  },
                                                  "end": {
                                                    "line": 348,
                                                    "column": 30
                                                  }
                                                },
                                                "object": {
                                                  "type": "ThisExpression",
                                                  "start": 13236,
                                                  "end": 13240,
                                                  "loc": {
                                                    "start": {
                                                      "line": 348,
                                                      "column": 12
                                                    },
                                                    "end": {
                                                      "line": 348,
                                                      "column": 16
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 13241,
                                                  "end": 13254,
                                                  "loc": {
                                                    "start": {
                                                      "line": 348,
                                                      "column": 17
                                                    },
                                                    "end": {
                                                      "line": 348,
                                                      "column": 30
                                                    }
                                                  },
                                                  "name": "currentSketch"
                                                },
                                                "computed": false
                                              },
                                              {
                                                "type": "MemberExpression",
                                                "start": 13268,
                                                "end": 13284,
                                                "loc": {
                                                  "start": {
                                                    "line": 349,
                                                    "column": 12
                                                  },
                                                  "end": {
                                                    "line": 349,
                                                    "column": 28
                                                  }
                                                },
                                                "object": {
                                                  "type": "ThisExpression",
                                                  "start": 13268,
                                                  "end": 13272,
                                                  "loc": {
                                                    "start": {
                                                      "line": 349,
                                                      "column": 12
                                                    },
                                                    "end": {
                                                      "line": 349,
                                                      "column": 16
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 13273,
                                                  "end": 13284,
                                                  "loc": {
                                                    "start": {
                                                      "line": 349,
                                                      "column": 17
                                                    },
                                                    "end": {
                                                      "line": 349,
                                                      "column": 28
                                                    }
                                                  },
                                                  "name": "movedObject"
                                                },
                                                "computed": false
                                              },
                                              {
                                                "type": "CallExpression",
                                                "start": 13298,
                                                "end": 13350,
                                                "loc": {
                                                  "start": {
                                                    "line": 350,
                                                    "column": 12
                                                  },
                                                  "end": {
                                                    "line": 350,
                                                    "column": 64
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 13298,
                                                  "end": 13329,
                                                  "loc": {
                                                    "start": {
                                                      "line": 350,
                                                      "column": 12
                                                    },
                                                    "end": {
                                                      "line": 350,
                                                      "column": 43
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "CallExpression",
                                                    "start": 13298,
                                                    "end": 13325,
                                                    "loc": {
                                                      "start": {
                                                        "line": 350,
                                                        "column": 12
                                                      },
                                                      "end": {
                                                        "line": 350,
                                                        "column": 39
                                                      }
                                                    },
                                                    "callee": {
                                                      "type": "MemberExpression",
                                                      "start": 13298,
                                                      "end": 13323,
                                                      "loc": {
                                                        "start": {
                                                          "line": 350,
                                                          "column": 12
                                                        },
                                                        "end": {
                                                          "line": 350,
                                                          "column": 37
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "MemberExpression",
                                                        "start": 13298,
                                                        "end": 13317,
                                                        "loc": {
                                                          "start": {
                                                            "line": 350,
                                                            "column": 12
                                                          },
                                                          "end": {
                                                            "line": 350,
                                                            "column": 31
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "MemberExpression",
                                                          "start": 13298,
                                                          "end": 13314,
                                                          "loc": {
                                                            "start": {
                                                              "line": 350,
                                                              "column": 12
                                                            },
                                                            "end": {
                                                              "line": 350,
                                                              "column": 28
                                                            }
                                                          },
                                                          "object": {
                                                            "type": "ThisExpression",
                                                            "start": 13298,
                                                            "end": 13302,
                                                            "loc": {
                                                              "start": {
                                                                "line": 350,
                                                                "column": 12
                                                              },
                                                              "end": {
                                                                "line": 350,
                                                                "column": 16
                                                              }
                                                            }
                                                          },
                                                          "property": {
                                                            "type": "Identifier",
                                                            "start": 13303,
                                                            "end": 13314,
                                                            "loc": {
                                                              "start": {
                                                                "line": 350,
                                                                "column": 17
                                                              },
                                                              "end": {
                                                                "line": 350,
                                                                "column": 28
                                                              }
                                                            },
                                                            "name": "mouseStates"
                                                          },
                                                          "computed": false
                                                        },
                                                        "property": {
                                                          "type": "Literal",
                                                          "start": 13315,
                                                          "end": 13316,
                                                          "loc": {
                                                            "start": {
                                                              "line": 350,
                                                              "column": 29
                                                            },
                                                            "end": {
                                                              "line": 350,
                                                              "column": 30
                                                            }
                                                          },
                                                          "value": 0,
                                                          "rawValue": 0,
                                                          "raw": "0"
                                                        },
                                                        "computed": true
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 13318,
                                                        "end": 13323,
                                                        "loc": {
                                                          "start": {
                                                            "line": 350,
                                                            "column": 32
                                                          },
                                                          "end": {
                                                            "line": 350,
                                                            "column": 37
                                                          }
                                                        },
                                                        "name": "clone"
                                                      },
                                                      "computed": false
                                                    },
                                                    "arguments": []
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 13326,
                                                    "end": 13329,
                                                    "loc": {
                                                      "start": {
                                                        "line": 350,
                                                        "column": 40
                                                      },
                                                      "end": {
                                                        "line": 350,
                                                        "column": 43
                                                      }
                                                    },
                                                    "name": "sub"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "MemberExpression",
                                                    "start": 13330,
                                                    "end": 13349,
                                                    "loc": {
                                                      "start": {
                                                        "line": 350,
                                                        "column": 44
                                                      },
                                                      "end": {
                                                        "line": 350,
                                                        "column": 63
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "MemberExpression",
                                                      "start": 13330,
                                                      "end": 13346,
                                                      "loc": {
                                                        "start": {
                                                          "line": 350,
                                                          "column": 44
                                                        },
                                                        "end": {
                                                          "line": 350,
                                                          "column": 60
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "ThisExpression",
                                                        "start": 13330,
                                                        "end": 13334,
                                                        "loc": {
                                                          "start": {
                                                            "line": 350,
                                                            "column": 44
                                                          },
                                                          "end": {
                                                            "line": 350,
                                                            "column": 48
                                                          }
                                                        }
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 13335,
                                                        "end": 13346,
                                                        "loc": {
                                                          "start": {
                                                            "line": 350,
                                                            "column": 49
                                                          },
                                                          "end": {
                                                            "line": 350,
                                                            "column": 60
                                                          }
                                                        },
                                                        "name": "mouseStates"
                                                      },
                                                      "computed": false
                                                    },
                                                    "property": {
                                                      "type": "Literal",
                                                      "start": 13347,
                                                      "end": 13348,
                                                      "loc": {
                                                        "start": {
                                                          "line": 350,
                                                          "column": 61
                                                        },
                                                        "end": {
                                                          "line": 350,
                                                          "column": 62
                                                        }
                                                      },
                                                      "value": 1,
                                                      "rawValue": 1,
                                                      "raw": "1"
                                                    },
                                                    "computed": true
                                                  }
                                                ]
                                              }
                                            ]
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 13361,
                                            "end": 13368,
                                            "loc": {
                                              "start": {
                                                "line": 351,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 351,
                                                "column": 17
                                              }
                                            },
                                            "name": "execute"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "MemberExpression",
                                            "start": 13369,
                                            "end": 13380,
                                            "loc": {
                                              "start": {
                                                "line": 351,
                                                "column": 18
                                              },
                                              "end": {
                                                "line": 351,
                                                "column": 29
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 13369,
                                              "end": 13373,
                                              "loc": {
                                                "start": {
                                                  "line": 351,
                                                  "column": 18
                                                },
                                                "end": {
                                                  "line": 351,
                                                  "column": 22
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 13374,
                                              "end": 13380,
                                              "loc": {
                                                "start": {
                                                  "line": 351,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 351,
                                                  "column": 29
                                                }
                                              },
                                              "name": "server"
                                            },
                                            "computed": false
                                          }
                                        ]
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 13382,
                                        "end": 13386,
                                        "loc": {
                                          "start": {
                                            "line": 351,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 351,
                                            "column": 35
                                          }
                                        },
                                        "name": "then"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrowFunctionExpression",
                                        "start": 13387,
                                        "end": 13453,
                                        "loc": {
                                          "start": {
                                            "line": 351,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 352,
                                            "column": 60
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": true,
                                        "async": false,
                                        "params": [],
                                        "body": {
                                          "type": "CallExpression",
                                          "start": 13405,
                                          "end": 13453,
                                          "loc": {
                                            "start": {
                                              "line": 352,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 352,
                                              "column": 60
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 13405,
                                            "end": 13440,
                                            "loc": {
                                              "start": {
                                                "line": 352,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 352,
                                                "column": 47
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 13405,
                                              "end": 13423,
                                              "loc": {
                                                "start": {
                                                  "line": 352,
                                                  "column": 12
                                                },
                                                "end": {
                                                  "line": 352,
                                                  "column": 30
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 13405,
                                                "end": 13409,
                                                "loc": {
                                                  "start": {
                                                    "line": 352,
                                                    "column": 12
                                                  },
                                                  "end": {
                                                    "line": 352,
                                                    "column": 16
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 13410,
                                                "end": 13423,
                                                "loc": {
                                                  "start": {
                                                    "line": 352,
                                                    "column": 17
                                                  },
                                                  "end": {
                                                    "line": 352,
                                                    "column": 30
                                                  }
                                                },
                                                "name": "currentSketch"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 13424,
                                              "end": 13440,
                                              "loc": {
                                                "start": {
                                                  "line": 352,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 352,
                                                  "column": 47
                                                }
                                              },
                                              "name": "updateFromServer"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "MemberExpression",
                                              "start": 13441,
                                              "end": 13452,
                                              "loc": {
                                                "start": {
                                                  "line": 352,
                                                  "column": 48
                                                },
                                                "end": {
                                                  "line": 352,
                                                  "column": 59
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 13441,
                                                "end": 13445,
                                                "loc": {
                                                  "start": {
                                                    "line": 352,
                                                    "column": 48
                                                  },
                                                  "end": {
                                                    "line": 352,
                                                    "column": 52
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 13446,
                                                "end": 13452,
                                                "loc": {
                                                  "start": {
                                                    "line": 352,
                                                    "column": 53
                                                  },
                                                  "end": {
                                                    "line": 352,
                                                    "column": 59
                                                  }
                                                },
                                                "name": "server"
                                              },
                                              "computed": false
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 13464,
                                    "end": 13468,
                                    "loc": {
                                      "start": {
                                        "line": 353,
                                        "column": 10
                                      },
                                      "end": {
                                        "line": 353,
                                        "column": 14
                                      }
                                    },
                                    "name": "then"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "ArrowFunctionExpression",
                                    "start": 13469,
                                    "end": 13594,
                                    "loc": {
                                      "start": {
                                        "line": 353,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 356,
                                        "column": 9
                                      }
                                    },
                                    "id": null,
                                    "generator": false,
                                    "expression": false,
                                    "async": false,
                                    "params": [],
                                    "body": {
                                      "type": "BlockStatement",
                                      "start": 13475,
                                      "end": 13594,
                                      "loc": {
                                        "start": {
                                          "line": 353,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 356,
                                          "column": 9
                                        }
                                      },
                                      "body": [
                                        {
                                          "type": "ExpressionStatement",
                                          "start": 13489,
                                          "end": 13528,
                                          "loc": {
                                            "start": {
                                              "line": 354,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 354,
                                              "column": 51
                                            }
                                          },
                                          "expression": {
                                            "type": "CallExpression",
                                            "start": 13489,
                                            "end": 13527,
                                            "loc": {
                                              "start": {
                                                "line": 354,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 354,
                                                "column": 50
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 13489,
                                              "end": 13512,
                                              "loc": {
                                                "start": {
                                                  "line": 354,
                                                  "column": 12
                                                },
                                                "end": {
                                                  "line": 354,
                                                  "column": 35
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 13489,
                                                "end": 13507,
                                                "loc": {
                                                  "start": {
                                                    "line": 354,
                                                    "column": 12
                                                  },
                                                  "end": {
                                                    "line": 354,
                                                    "column": 30
                                                  }
                                                },
                                                "name": "updateSketchStates"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 13508,
                                                "end": 13512,
                                                "loc": {
                                                  "start": {
                                                    "line": 354,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 354,
                                                    "column": 35
                                                  }
                                                },
                                                "name": "call"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "ThisExpression",
                                                "start": 13513,
                                                "end": 13517,
                                                "loc": {
                                                  "start": {
                                                    "line": 354,
                                                    "column": 36
                                                  },
                                                  "end": {
                                                    "line": 354,
                                                    "column": 40
                                                  }
                                                }
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 13519,
                                                "end": 13526,
                                                "loc": {
                                                  "start": {
                                                    "line": 354,
                                                    "column": 42
                                                  },
                                                  "end": {
                                                    "line": 354,
                                                    "column": 49
                                                  }
                                                },
                                                "name": "objects"
                                              }
                                            ]
                                          }
                                        },
                                        {
                                          "type": "ExpressionStatement",
                                          "start": 13541,
                                          "end": 13584,
                                          "loc": {
                                            "start": {
                                              "line": 355,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 355,
                                              "column": 55
                                            }
                                          },
                                          "expression": {
                                            "type": "AssignmentExpression",
                                            "start": 13541,
                                            "end": 13583,
                                            "loc": {
                                              "start": {
                                                "line": 355,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 355,
                                                "column": 54
                                              }
                                            },
                                            "operator": "=",
                                            "left": {
                                              "type": "MemberExpression",
                                              "start": 13541,
                                              "end": 13575,
                                              "loc": {
                                                "start": {
                                                  "line": 355,
                                                  "column": 12
                                                },
                                                "end": {
                                                  "line": 355,
                                                  "column": 46
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 13541,
                                                "end": 13559,
                                                "loc": {
                                                  "start": {
                                                    "line": 355,
                                                    "column": 12
                                                  },
                                                  "end": {
                                                    "line": 355,
                                                    "column": 30
                                                  }
                                                },
                                                "object": {
                                                  "type": "ThisExpression",
                                                  "start": 13541,
                                                  "end": 13545,
                                                  "loc": {
                                                    "start": {
                                                      "line": 355,
                                                      "column": 12
                                                    },
                                                    "end": {
                                                      "line": 355,
                                                      "column": 16
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 13546,
                                                  "end": 13559,
                                                  "loc": {
                                                    "start": {
                                                      "line": 355,
                                                      "column": 17
                                                    },
                                                    "end": {
                                                      "line": 355,
                                                      "column": 30
                                                    }
                                                  },
                                                  "name": "currentSketch"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 13560,
                                                "end": 13575,
                                                "loc": {
                                                  "start": {
                                                    "line": 355,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 355,
                                                    "column": 46
                                                  }
                                                },
                                                "name": "solveInProgress"
                                              },
                                              "computed": false
                                            },
                                            "right": {
                                              "type": "Literal",
                                              "start": 13578,
                                              "end": 13583,
                                              "loc": {
                                                "start": {
                                                  "line": 355,
                                                  "column": 49
                                                },
                                                "end": {
                                                  "line": 355,
                                                  "column": 54
                                                }
                                              },
                                              "value": false,
                                              "rawValue": false,
                                              "raw": "false"
                                            }
                                          }
                                        }
                                      ]
                                    }
                                  }
                                ]
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13596,
                                "end": 13601,
                                "loc": {
                                  "start": {
                                    "line": 356,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 356,
                                    "column": 16
                                  }
                                },
                                "name": "catch"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ArrowFunctionExpression",
                                "start": 13602,
                                "end": 13675,
                                "loc": {
                                  "start": {
                                    "line": 356,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 358,
                                    "column": 9
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": false,
                                "async": false,
                                "params": [],
                                "body": {
                                  "type": "BlockStatement",
                                  "start": 13608,
                                  "end": 13675,
                                  "loc": {
                                    "start": {
                                      "line": 356,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 358,
                                      "column": 9
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 13622,
                                      "end": 13665,
                                      "loc": {
                                        "start": {
                                          "line": 357,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 357,
                                          "column": 55
                                        }
                                      },
                                      "expression": {
                                        "type": "AssignmentExpression",
                                        "start": 13622,
                                        "end": 13664,
                                        "loc": {
                                          "start": {
                                            "line": 357,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 357,
                                            "column": 54
                                          }
                                        },
                                        "operator": "=",
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 13622,
                                          "end": 13656,
                                          "loc": {
                                            "start": {
                                              "line": 357,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 357,
                                              "column": 46
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 13622,
                                            "end": 13640,
                                            "loc": {
                                              "start": {
                                                "line": 357,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 357,
                                                "column": 30
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 13622,
                                              "end": 13626,
                                              "loc": {
                                                "start": {
                                                  "line": 357,
                                                  "column": 12
                                                },
                                                "end": {
                                                  "line": 357,
                                                  "column": 16
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 13627,
                                              "end": 13640,
                                              "loc": {
                                                "start": {
                                                  "line": 357,
                                                  "column": 17
                                                },
                                                "end": {
                                                  "line": 357,
                                                  "column": 30
                                                }
                                              },
                                              "name": "currentSketch"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 13641,
                                            "end": 13656,
                                            "loc": {
                                              "start": {
                                                "line": 357,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 357,
                                                "column": 46
                                              }
                                            },
                                            "name": "solveInProgress"
                                          },
                                          "computed": false
                                        },
                                        "right": {
                                          "type": "Literal",
                                          "start": 13659,
                                          "end": 13664,
                                          "loc": {
                                            "start": {
                                              "line": 357,
                                              "column": 49
                                            },
                                            "end": {
                                              "line": 357,
                                              "column": 54
                                            }
                                          },
                                          "value": false,
                                          "rawValue": false,
                                          "raw": "false"
                                        }
                                      }
                                    }
                                  ]
                                }
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13686,
                      "end": 13702,
                      "loc": {
                        "start": {
                          "line": 359,
                          "column": 8
                        },
                        "end": {
                          "line": 359,
                          "column": 24
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13686,
                        "end": 13701,
                        "loc": {
                          "start": {
                            "line": 359,
                            "column": 8
                          },
                          "end": {
                            "line": 359,
                            "column": 23
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 13686,
                          "end": 13698,
                          "loc": {
                            "start": {
                              "line": 359,
                              "column": 8
                            },
                            "end": {
                              "line": 359,
                              "column": 20
                            }
                          },
                          "name": "trackPromise"
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 13699,
                            "end": 13700,
                            "loc": {
                              "start": {
                                "line": 359,
                                "column": 21
                              },
                              "end": {
                                "line": 359,
                                "column": 22
                              }
                            },
                            "name": "p"
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 13714,
              "end": 14111,
              "loc": {
                "start": {
                  "line": 362,
                  "column": 4
                },
                "end": {
                  "line": 368,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 13714,
                "end": 13723,
                "loc": {
                  "start": {
                    "line": 362,
                    "column": 4
                  },
                  "end": {
                    "line": 362,
                    "column": 13
                  }
                },
                "name": "newSketch"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 13723,
                "end": 14111,
                "loc": {
                  "start": {
                    "line": 362,
                    "column": 13
                  },
                  "end": {
                    "line": 368,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 13724,
                    "end": 13732,
                    "loc": {
                      "start": {
                        "line": 362,
                        "column": 14
                      },
                      "end": {
                        "line": 362,
                        "column": 22
                      }
                    },
                    "name": "position"
                  },
                  {
                    "type": "Identifier",
                    "start": 13734,
                    "end": 13744,
                    "loc": {
                      "start": {
                        "line": 362,
                        "column": 24
                      },
                      "end": {
                        "line": 362,
                        "column": 34
                      }
                    },
                    "name": "quaternion"
                  },
                  {
                    "type": "Identifier",
                    "start": 13746,
                    "end": 13750,
                    "loc": {
                      "start": {
                        "line": 362,
                        "column": 36
                      },
                      "end": {
                        "line": 362,
                        "column": 40
                      }
                    },
                    "name": "item"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 13752,
                  "end": 14111,
                  "loc": {
                    "start": {
                      "line": 362,
                      "column": 42
                    },
                    "end": {
                      "line": 368,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 13762,
                      "end": 13859,
                      "loc": {
                        "start": {
                          "line": 363,
                          "column": 8
                        },
                        "end": {
                          "line": 363,
                          "column": 105
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 13766,
                          "end": 13858,
                          "loc": {
                            "start": {
                              "line": 363,
                              "column": 12
                            },
                            "end": {
                              "line": 363,
                              "column": 104
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 13766,
                            "end": 13771,
                            "loc": {
                              "start": {
                                "line": 363,
                                "column": 12
                              },
                              "end": {
                                "line": 363,
                                "column": 17
                              }
                            },
                            "name": "coSys"
                          },
                          "init": {
                            "type": "ArrayExpression",
                            "start": 13774,
                            "end": 13858,
                            "loc": {
                              "start": {
                                "line": 363,
                                "column": 20
                              },
                              "end": {
                                "line": 363,
                                "column": 104
                              }
                            },
                            "elements": [
                              {
                                "type": "NewExpression",
                                "start": 13775,
                                "end": 13801,
                                "loc": {
                                  "start": {
                                    "line": 363,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 363,
                                    "column": 47
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 13779,
                                  "end": 13792,
                                  "loc": {
                                    "start": {
                                      "line": 363,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 363,
                                      "column": 38
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 13779,
                                    "end": 13784,
                                    "loc": {
                                      "start": {
                                        "line": 363,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 363,
                                        "column": 30
                                      }
                                    },
                                    "name": "THREE"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 13785,
                                    "end": 13792,
                                    "loc": {
                                      "start": {
                                        "line": 363,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 363,
                                        "column": 38
                                      }
                                    },
                                    "name": "Vector3"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 13793,
                                    "end": 13794,
                                    "loc": {
                                      "start": {
                                        "line": 363,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 363,
                                        "column": 40
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  },
                                  {
                                    "type": "Literal",
                                    "start": 13796,
                                    "end": 13797,
                                    "loc": {
                                      "start": {
                                        "line": 363,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 363,
                                        "column": 43
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  {
                                    "type": "Literal",
                                    "start": 13799,
                                    "end": 13800,
                                    "loc": {
                                      "start": {
                                        "line": 363,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 363,
                                        "column": 46
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  }
                                ]
                              },
                              {
                                "type": "NewExpression",
                                "start": 13803,
                                "end": 13829,
                                "loc": {
                                  "start": {
                                    "line": 363,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 363,
                                    "column": 75
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 13807,
                                  "end": 13820,
                                  "loc": {
                                    "start": {
                                      "line": 363,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 363,
                                      "column": 66
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 13807,
                                    "end": 13812,
                                    "loc": {
                                      "start": {
                                        "line": 363,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 363,
                                        "column": 58
                                      }
                                    },
                                    "name": "THREE"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 13813,
                                    "end": 13820,
                                    "loc": {
                                      "start": {
                                        "line": 363,
                                        "column": 59
                                      },
                                      "end": {
                                        "line": 363,
                                        "column": 66
                                      }
                                    },
                                    "name": "Vector3"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 13821,
                                    "end": 13822,
                                    "loc": {
                                      "start": {
                                        "line": 363,
                                        "column": 67
                                      },
                                      "end": {
                                        "line": 363,
                                        "column": 68
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  {
                                    "type": "Literal",
                                    "start": 13824,
                                    "end": 13825,
                                    "loc": {
                                      "start": {
                                        "line": 363,
                                        "column": 70
                                      },
                                      "end": {
                                        "line": 363,
                                        "column": 71
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  },
                                  {
                                    "type": "Literal",
                                    "start": 13827,
                                    "end": 13828,
                                    "loc": {
                                      "start": {
                                        "line": 363,
                                        "column": 73
                                      },
                                      "end": {
                                        "line": 363,
                                        "column": 74
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  }
                                ]
                              },
                              {
                                "type": "NewExpression",
                                "start": 13831,
                                "end": 13857,
                                "loc": {
                                  "start": {
                                    "line": 363,
                                    "column": 77
                                  },
                                  "end": {
                                    "line": 363,
                                    "column": 103
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 13835,
                                  "end": 13848,
                                  "loc": {
                                    "start": {
                                      "line": 363,
                                      "column": 81
                                    },
                                    "end": {
                                      "line": 363,
                                      "column": 94
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 13835,
                                    "end": 13840,
                                    "loc": {
                                      "start": {
                                        "line": 363,
                                        "column": 81
                                      },
                                      "end": {
                                        "line": 363,
                                        "column": 86
                                      }
                                    },
                                    "name": "THREE"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 13841,
                                    "end": 13848,
                                    "loc": {
                                      "start": {
                                        "line": 363,
                                        "column": 87
                                      },
                                      "end": {
                                        "line": 363,
                                        "column": 94
                                      }
                                    },
                                    "name": "Vector3"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 13849,
                                    "end": 13850,
                                    "loc": {
                                      "start": {
                                        "line": 363,
                                        "column": 95
                                      },
                                      "end": {
                                        "line": 363,
                                        "column": 96
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  {
                                    "type": "Literal",
                                    "start": 13852,
                                    "end": 13853,
                                    "loc": {
                                      "start": {
                                        "line": 363,
                                        "column": 98
                                      },
                                      "end": {
                                        "line": 363,
                                        "column": 99
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  {
                                    "type": "Literal",
                                    "start": 13855,
                                    "end": 13856,
                                    "loc": {
                                      "start": {
                                        "line": 363,
                                        "column": 101
                                      },
                                      "end": {
                                        "line": 363,
                                        "column": 102
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  }
                                ]
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13868,
                      "end": 13924,
                      "loc": {
                        "start": {
                          "line": 364,
                          "column": 8
                        },
                        "end": {
                          "line": 364,
                          "column": 64
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13868,
                        "end": 13923,
                        "loc": {
                          "start": {
                            "line": 364,
                            "column": 8
                          },
                          "end": {
                            "line": 364,
                            "column": 63
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13868,
                          "end": 13881,
                          "loc": {
                            "start": {
                              "line": 364,
                              "column": 8
                            },
                            "end": {
                              "line": 364,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 13868,
                            "end": 13873,
                            "loc": {
                              "start": {
                                "line": 364,
                                "column": 8
                              },
                              "end": {
                                "line": 364,
                                "column": 13
                              }
                            },
                            "name": "coSys"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13874,
                            "end": 13881,
                            "loc": {
                              "start": {
                                "line": 364,
                                "column": 14
                              },
                              "end": {
                                "line": 364,
                                "column": 21
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 13882,
                            "end": 13922,
                            "loc": {
                              "start": {
                                "line": 364,
                                "column": 22
                              },
                              "end": {
                                "line": 364,
                                "column": 62
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 13882,
                                "end": 13886,
                                "loc": {
                                  "start": {
                                    "line": 364,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 364,
                                    "column": 26
                                  }
                                },
                                "name": "axis"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 13890,
                              "end": 13922,
                              "loc": {
                                "start": {
                                  "line": 364,
                                  "column": 30
                                },
                                "end": {
                                  "line": 364,
                                  "column": 62
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 13890,
                                "end": 13910,
                                "loc": {
                                  "start": {
                                    "line": 364,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 364,
                                    "column": 50
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 13890,
                                  "end": 13894,
                                  "loc": {
                                    "start": {
                                      "line": 364,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 364,
                                      "column": 34
                                    }
                                  },
                                  "name": "axis"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13895,
                                  "end": 13910,
                                  "loc": {
                                    "start": {
                                      "line": 364,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 364,
                                      "column": 50
                                    }
                                  },
                                  "name": "applyQuaternion"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 13911,
                                  "end": 13921,
                                  "loc": {
                                    "start": {
                                      "line": 364,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 364,
                                      "column": 61
                                    }
                                  },
                                  "name": "quaternion"
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13933,
                      "end": 13957,
                      "loc": {
                        "start": {
                          "line": 365,
                          "column": 8
                        },
                        "end": {
                          "line": 365,
                          "column": 32
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13933,
                        "end": 13956,
                        "loc": {
                          "start": {
                            "line": 365,
                            "column": 8
                          },
                          "end": {
                            "line": 365,
                            "column": 31
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13933,
                          "end": 13946,
                          "loc": {
                            "start": {
                              "line": 365,
                              "column": 8
                            },
                            "end": {
                              "line": 365,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 13933,
                            "end": 13938,
                            "loc": {
                              "start": {
                                "line": 365,
                                "column": 8
                              },
                              "end": {
                                "line": 365,
                                "column": 13
                              }
                            },
                            "name": "coSys"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13939,
                            "end": 13946,
                            "loc": {
                              "start": {
                                "line": 365,
                                "column": 14
                              },
                              "end": {
                                "line": 365,
                                "column": 21
                              }
                            },
                            "name": "unshift"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 13947,
                            "end": 13955,
                            "loc": {
                              "start": {
                                "line": 365,
                                "column": 22
                              },
                              "end": {
                                "line": 365,
                                "column": 30
                              }
                            },
                            "name": "position"
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 13966,
                      "end": 14011,
                      "loc": {
                        "start": {
                          "line": 366,
                          "column": 8
                        },
                        "end": {
                          "line": 366,
                          "column": 53
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 13970,
                          "end": 14010,
                          "loc": {
                            "start": {
                              "line": 366,
                              "column": 12
                            },
                            "end": {
                              "line": 366,
                              "column": 52
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 13970,
                            "end": 13979,
                            "loc": {
                              "start": {
                                "line": 366,
                                "column": 12
                              },
                              "end": {
                                "line": 366,
                                "column": 21
                              }
                            },
                            "name": "sketchSet"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 13982,
                            "end": 14010,
                            "loc": {
                              "start": {
                                "line": 366,
                                "column": 24
                              },
                              "end": {
                                "line": 366,
                                "column": 52
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13982,
                              "end": 14004,
                              "loc": {
                                "start": {
                                  "line": 366,
                                  "column": 24
                                },
                                "end": {
                                  "line": 366,
                                  "column": 46
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 13982,
                                "end": 13988,
                                "loc": {
                                  "start": {
                                    "line": 366,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 366,
                                    "column": 30
                                  }
                                },
                                "name": "Sketch"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13989,
                                "end": 14004,
                                "loc": {
                                  "start": {
                                    "line": 366,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 366,
                                    "column": 46
                                  }
                                },
                                "name": "FindSketchSetOf"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 14005,
                                "end": 14009,
                                "loc": {
                                  "start": {
                                    "line": 366,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 366,
                                    "column": 51
                                  }
                                },
                                "name": "item"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 14020,
                      "end": 14105,
                      "loc": {
                        "start": {
                          "line": 367,
                          "column": 8
                        },
                        "end": {
                          "line": 367,
                          "column": 93
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 14027,
                        "end": 14104,
                        "loc": {
                          "start": {
                            "line": 367,
                            "column": 15
                          },
                          "end": {
                            "line": 367,
                            "column": 92
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14027,
                          "end": 14091,
                          "loc": {
                            "start": {
                              "line": 367,
                              "column": 15
                            },
                            "end": {
                              "line": 367,
                              "column": 79
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 14027,
                            "end": 14083,
                            "loc": {
                              "start": {
                                "line": 367,
                                "column": 15
                              },
                              "end": {
                                "line": 367,
                                "column": 71
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 14027,
                              "end": 14072,
                              "loc": {
                                "start": {
                                  "line": 367,
                                  "column": 15
                                },
                                "end": {
                                  "line": 367,
                                  "column": 60
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 14027,
                                "end": 14057,
                                "loc": {
                                  "start": {
                                    "line": 367,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 367,
                                    "column": 45
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 14027,
                                  "end": 14044,
                                  "loc": {
                                    "start": {
                                      "line": 367,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 367,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 14027,
                                    "end": 14034,
                                    "loc": {
                                      "start": {
                                        "line": 367,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 367,
                                        "column": 22
                                      }
                                    },
                                    "name": "Interop"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 14035,
                                    "end": 14044,
                                    "loc": {
                                      "start": {
                                        "line": 367,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 367,
                                        "column": 32
                                      }
                                    },
                                    "name": "AddSketch"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 14045,
                                    "end": 14049,
                                    "loc": {
                                      "start": {
                                        "line": 367,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 367,
                                        "column": 37
                                      }
                                    },
                                    "name": "item"
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 14051,
                                    "end": 14056,
                                    "loc": {
                                      "start": {
                                        "line": 367,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 367,
                                        "column": 44
                                      }
                                    },
                                    "name": "coSys"
                                  }
                                ]
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 14058,
                                "end": 14072,
                                "loc": {
                                  "start": {
                                    "line": 367,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 367,
                                    "column": 60
                                  }
                                },
                                "name": "parseToChildOf"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 14073,
                                "end": 14082,
                                "loc": {
                                  "start": {
                                    "line": 367,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 367,
                                    "column": 70
                                  }
                                },
                                "name": "sketchSet"
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14084,
                            "end": 14091,
                            "loc": {
                              "start": {
                                "line": 367,
                                "column": 72
                              },
                              "end": {
                                "line": 367,
                                "column": 79
                              }
                            },
                            "name": "execute"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 14092,
                            "end": 14103,
                            "loc": {
                              "start": {
                                "line": 367,
                                "column": 80
                              },
                              "end": {
                                "line": 367,
                                "column": 91
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 14092,
                              "end": 14096,
                              "loc": {
                                "start": {
                                  "line": 367,
                                  "column": 80
                                },
                                "end": {
                                  "line": 367,
                                  "column": 84
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 14097,
                              "end": 14103,
                              "loc": {
                                "start": {
                                  "line": 367,
                                  "column": 85
                                },
                                "end": {
                                  "line": 367,
                                  "column": 91
                                }
                              },
                              "name": "server"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 14117,
              "end": 14302,
              "loc": {
                "start": {
                  "line": 370,
                  "column": 4
                },
                "end": {
                  "line": 373,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 14117,
                "end": 14135,
                "loc": {
                  "start": {
                    "line": 370,
                    "column": 4
                  },
                  "end": {
                    "line": 370,
                    "column": 22
                  }
                },
                "name": "newSketchFromPlane"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 14135,
                "end": 14302,
                "loc": {
                  "start": {
                    "line": 370,
                    "column": 22
                  },
                  "end": {
                    "line": 373,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 14136,
                    "end": 14141,
                    "loc": {
                      "start": {
                        "line": 370,
                        "column": 23
                      },
                      "end": {
                        "line": 370,
                        "column": 28
                      }
                    },
                    "name": "plane"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 14143,
                  "end": 14302,
                  "loc": {
                    "start": {
                      "line": 370,
                      "column": 30
                    },
                    "end": {
                      "line": 373,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 14153,
                      "end": 14199,
                      "loc": {
                        "start": {
                          "line": 371,
                          "column": 8
                        },
                        "end": {
                          "line": 371,
                          "column": 54
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 14157,
                          "end": 14198,
                          "loc": {
                            "start": {
                              "line": 371,
                              "column": 12
                            },
                            "end": {
                              "line": 371,
                              "column": 53
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 14157,
                            "end": 14166,
                            "loc": {
                              "start": {
                                "line": 371,
                                "column": 12
                              },
                              "end": {
                                "line": 371,
                                "column": 21
                              }
                            },
                            "name": "sketchSet"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 14169,
                            "end": 14198,
                            "loc": {
                              "start": {
                                "line": 371,
                                "column": 24
                              },
                              "end": {
                                "line": 371,
                                "column": 53
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 14169,
                              "end": 14191,
                              "loc": {
                                "start": {
                                  "line": 371,
                                  "column": 24
                                },
                                "end": {
                                  "line": 371,
                                  "column": 46
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 14169,
                                "end": 14175,
                                "loc": {
                                  "start": {
                                    "line": 371,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 371,
                                    "column": 30
                                  }
                                },
                                "name": "Sketch"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 14176,
                                "end": 14191,
                                "loc": {
                                  "start": {
                                    "line": 371,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 371,
                                    "column": 46
                                  }
                                },
                                "name": "FindSketchSetOf"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 14192,
                                "end": 14197,
                                "loc": {
                                  "start": {
                                    "line": 371,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 371,
                                    "column": 52
                                  }
                                },
                                "name": "plane"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 14208,
                      "end": 14296,
                      "loc": {
                        "start": {
                          "line": 372,
                          "column": 8
                        },
                        "end": {
                          "line": 372,
                          "column": 96
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 14215,
                        "end": 14295,
                        "loc": {
                          "start": {
                            "line": 372,
                            "column": 15
                          },
                          "end": {
                            "line": 372,
                            "column": 95
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14215,
                          "end": 14282,
                          "loc": {
                            "start": {
                              "line": 372,
                              "column": 15
                            },
                            "end": {
                              "line": 372,
                              "column": 82
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 14215,
                            "end": 14274,
                            "loc": {
                              "start": {
                                "line": 372,
                                "column": 15
                              },
                              "end": {
                                "line": 372,
                                "column": 74
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 14215,
                              "end": 14263,
                              "loc": {
                                "start": {
                                  "line": 372,
                                  "column": 15
                                },
                                "end": {
                                  "line": 372,
                                  "column": 63
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 14215,
                                "end": 14248,
                                "loc": {
                                  "start": {
                                    "line": 372,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 372,
                                    "column": 48
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 14215,
                                  "end": 14241,
                                  "loc": {
                                    "start": {
                                      "line": 372,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 372,
                                      "column": 41
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 14215,
                                    "end": 14222,
                                    "loc": {
                                      "start": {
                                        "line": 372,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 372,
                                        "column": 22
                                      }
                                    },
                                    "name": "Interop"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 14223,
                                    "end": 14241,
                                    "loc": {
                                      "start": {
                                        "line": 372,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 372,
                                        "column": 41
                                      }
                                    },
                                    "name": "AddSketchFromPlane"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 14242,
                                    "end": 14247,
                                    "loc": {
                                      "start": {
                                        "line": 372,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 372,
                                        "column": 47
                                      }
                                    },
                                    "name": "plane"
                                  }
                                ]
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 14249,
                                "end": 14263,
                                "loc": {
                                  "start": {
                                    "line": 372,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 372,
                                    "column": 63
                                  }
                                },
                                "name": "parseToChildOf"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 14264,
                                "end": 14273,
                                "loc": {
                                  "start": {
                                    "line": 372,
                                    "column": 64
                                  },
                                  "end": {
                                    "line": 372,
                                    "column": 73
                                  }
                                },
                                "name": "sketchSet"
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14275,
                            "end": 14282,
                            "loc": {
                              "start": {
                                "line": 372,
                                "column": 75
                              },
                              "end": {
                                "line": 372,
                                "column": 82
                              }
                            },
                            "name": "execute"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 14283,
                            "end": 14294,
                            "loc": {
                              "start": {
                                "line": 372,
                                "column": 83
                              },
                              "end": {
                                "line": 372,
                                "column": 94
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 14283,
                              "end": 14287,
                              "loc": {
                                "start": {
                                  "line": 372,
                                  "column": 83
                                },
                                "end": {
                                  "line": 372,
                                  "column": 87
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 14288,
                              "end": 14294,
                              "loc": {
                                "start": {
                                  "line": 372,
                                  "column": 88
                                },
                                "end": {
                                  "line": 372,
                                  "column": 94
                                }
                              },
                              "name": "server"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 14308,
              "end": 14823,
              "loc": {
                "start": {
                  "line": 375,
                  "column": 4
                },
                "end": {
                  "line": 387,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 14308,
                "end": 14320,
                "loc": {
                  "start": {
                    "line": 375,
                    "column": 4
                  },
                  "end": {
                    "line": 375,
                    "column": 16
                  }
                },
                "name": "deleteSketch"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 14320,
                "end": 14823,
                "loc": {
                  "start": {
                    "line": 375,
                    "column": 16
                  },
                  "end": {
                    "line": 387,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 14323,
                  "end": 14823,
                  "loc": {
                    "start": {
                      "line": 375,
                      "column": 19
                    },
                    "end": {
                      "line": 387,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 14333,
                      "end": 14448,
                      "loc": {
                        "start": {
                          "line": 376,
                          "column": 8
                        },
                        "end": {
                          "line": 377,
                          "column": 19
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 14337,
                        "end": 14427,
                        "loc": {
                          "start": {
                            "line": 376,
                            "column": 12
                          },
                          "end": {
                            "line": 376,
                            "column": 102
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "CallExpression",
                          "start": 14338,
                          "end": 14427,
                          "loc": {
                            "start": {
                              "line": 376,
                              "column": 13
                            },
                            "end": {
                              "line": 376,
                              "column": 102
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 14338,
                            "end": 14345,
                            "loc": {
                              "start": {
                                "line": 376,
                                "column": 13
                              },
                              "end": {
                                "line": 376,
                                "column": 20
                              }
                            },
                            "name": "confirm"
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "start": 14346,
                              "end": 14426,
                              "loc": {
                                "start": {
                                  "line": 376,
                                  "column": 21
                                },
                                "end": {
                                  "line": 376,
                                  "column": 101
                                }
                              },
                              "value": "Do you really want to irreversibly delete current sketch and all its contents?",
                              "rawValue": "Do you really want to irreversibly delete current sketch and all its contents?",
                              "raw": "\"Do you really want to irreversibly delete current sketch and all its contents?\""
                            }
                          ]
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 14441,
                        "end": 14448,
                        "loc": {
                          "start": {
                            "line": 377,
                            "column": 12
                          },
                          "end": {
                            "line": 377,
                            "column": 19
                          }
                        },
                        "argument": null
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 14457,
                      "end": 14489,
                      "loc": {
                        "start": {
                          "line": 378,
                          "column": 8
                        },
                        "end": {
                          "line": 378,
                          "column": 40
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 14461,
                          "end": 14488,
                          "loc": {
                            "start": {
                              "line": 378,
                              "column": 12
                            },
                            "end": {
                              "line": 378,
                              "column": 39
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 14461,
                            "end": 14467,
                            "loc": {
                              "start": {
                                "line": 378,
                                "column": 12
                              },
                              "end": {
                                "line": 378,
                                "column": 18
                              }
                            },
                            "name": "sketch"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 14470,
                            "end": 14488,
                            "loc": {
                              "start": {
                                "line": 378,
                                "column": 21
                              },
                              "end": {
                                "line": 378,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 14470,
                              "end": 14474,
                              "loc": {
                                "start": {
                                  "line": 378,
                                  "column": 21
                                },
                                "end": {
                                  "line": 378,
                                  "column": 25
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 14475,
                              "end": 14488,
                              "loc": {
                                "start": {
                                  "line": 378,
                                  "column": 26
                                },
                                "end": {
                                  "line": 378,
                                  "column": 39
                                }
                              },
                              "name": "currentSketch"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 14498,
                      "end": 14530,
                      "loc": {
                        "start": {
                          "line": 379,
                          "column": 8
                        },
                        "end": {
                          "line": 380,
                          "column": 19
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 14502,
                        "end": 14509,
                        "loc": {
                          "start": {
                            "line": 379,
                            "column": 12
                          },
                          "end": {
                            "line": 379,
                            "column": 19
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 14503,
                          "end": 14509,
                          "loc": {
                            "start": {
                              "line": 379,
                              "column": 13
                            },
                            "end": {
                              "line": 379,
                              "column": 19
                            }
                          },
                          "name": "sketch"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 14523,
                        "end": 14530,
                        "loc": {
                          "start": {
                            "line": 380,
                            "column": 12
                          },
                          "end": {
                            "line": 380,
                            "column": 19
                          }
                        },
                        "argument": null
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 14539,
                      "end": 14584,
                      "loc": {
                        "start": {
                          "line": 381,
                          "column": 8
                        },
                        "end": {
                          "line": 381,
                          "column": 53
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 14539,
                        "end": 14583,
                        "loc": {
                          "start": {
                            "line": 381,
                            "column": 8
                          },
                          "end": {
                            "line": 381,
                            "column": 52
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14539,
                          "end": 14558,
                          "loc": {
                            "start": {
                              "line": 381,
                              "column": 8
                            },
                            "end": {
                              "line": 381,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 14539,
                            "end": 14543,
                            "loc": {
                              "start": {
                                "line": 381,
                                "column": 8
                              },
                              "end": {
                                "line": 381,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14544,
                            "end": 14558,
                            "loc": {
                              "start": {
                                "line": 381,
                                "column": 13
                              },
                              "end": {
                                "line": 381,
                                "column": 27
                              }
                            },
                            "name": "deselectSketch"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ObjectExpression",
                            "start": 14559,
                            "end": 14582,
                            "loc": {
                              "start": {
                                "line": 381,
                                "column": 28
                              },
                              "end": {
                                "line": 381,
                                "column": 51
                              }
                            },
                            "properties": [
                              {
                                "type": "Property",
                                "start": 14560,
                                "end": 14581,
                                "loc": {
                                  "start": {
                                    "line": 381,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 381,
                                    "column": 50
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 14560,
                                  "end": 14575,
                                  "loc": {
                                    "start": {
                                      "line": 381,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 381,
                                      "column": 44
                                    }
                                  },
                                  "name": "skipServerCalls"
                                },
                                "value": {
                                  "type": "Literal",
                                  "start": 14577,
                                  "end": 14581,
                                  "loc": {
                                    "start": {
                                      "line": 381,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 381,
                                      "column": 50
                                    }
                                  },
                                  "value": true,
                                  "rawValue": true,
                                  "raw": "true"
                                },
                                "kind": "init"
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 14593,
                      "end": 14626,
                      "loc": {
                        "start": {
                          "line": 382,
                          "column": 8
                        },
                        "end": {
                          "line": 382,
                          "column": 41
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 14593,
                        "end": 14625,
                        "loc": {
                          "start": {
                            "line": 382,
                            "column": 8
                          },
                          "end": {
                            "line": 382,
                            "column": 40
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14593,
                          "end": 14623,
                          "loc": {
                            "start": {
                              "line": 382,
                              "column": 8
                            },
                            "end": {
                              "line": 382,
                              "column": 38
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 14593,
                            "end": 14605,
                            "loc": {
                              "start": {
                                "line": 382,
                                "column": 8
                              },
                              "end": {
                                "line": 382,
                                "column": 20
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 14593,
                              "end": 14599,
                              "loc": {
                                "start": {
                                  "line": 382,
                                  "column": 8
                                },
                                "end": {
                                  "line": 382,
                                  "column": 14
                                }
                              },
                              "name": "sketch"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 14600,
                              "end": 14605,
                              "loc": {
                                "start": {
                                  "line": 382,
                                  "column": 15
                                },
                                "end": {
                                  "line": 382,
                                  "column": 20
                                }
                              },
                              "name": "__box"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14606,
                            "end": 14623,
                            "loc": {
                              "start": {
                                "line": 382,
                                "column": 21
                              },
                              "end": {
                                "line": 382,
                                "column": 38
                              }
                            },
                            "name": "removeInteraction"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 14635,
                      "end": 14817,
                      "loc": {
                        "start": {
                          "line": 383,
                          "column": 8
                        },
                        "end": {
                          "line": 386,
                          "column": 12
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 14642,
                        "end": 14816,
                        "loc": {
                          "start": {
                            "line": 383,
                            "column": 15
                          },
                          "end": {
                            "line": 386,
                            "column": 11
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 14642,
                          "end": 14654,
                          "loc": {
                            "start": {
                              "line": 383,
                              "column": 15
                            },
                            "end": {
                              "line": 383,
                              "column": 27
                            }
                          },
                          "name": "trackPromise"
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 14655,
                            "end": 14815,
                            "loc": {
                              "start": {
                                "line": 383,
                                "column": 28
                              },
                              "end": {
                                "line": 386,
                                "column": 10
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 14655,
                              "end": 14709,
                              "loc": {
                                "start": {
                                  "line": 383,
                                  "column": 28
                                },
                                "end": {
                                  "line": 383,
                                  "column": 82
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 14655,
                                "end": 14704,
                                "loc": {
                                  "start": {
                                    "line": 383,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 383,
                                    "column": 77
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 14655,
                                  "end": 14691,
                                  "loc": {
                                    "start": {
                                      "line": 383,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 383,
                                      "column": 64
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 14655,
                                    "end": 14683,
                                    "loc": {
                                      "start": {
                                        "line": 383,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 383,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 14655,
                                      "end": 14675,
                                      "loc": {
                                        "start": {
                                          "line": 383,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 383,
                                          "column": 48
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 14655,
                                        "end": 14662,
                                        "loc": {
                                          "start": {
                                            "line": 383,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 383,
                                            "column": 35
                                          }
                                        },
                                        "name": "Interop"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 14663,
                                        "end": 14675,
                                        "loc": {
                                          "start": {
                                            "line": 383,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 383,
                                            "column": 48
                                          }
                                        },
                                        "name": "RemoveSketch"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 14676,
                                        "end": 14682,
                                        "loc": {
                                          "start": {
                                            "line": 383,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 383,
                                            "column": 55
                                          }
                                        },
                                        "name": "sketch"
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 14684,
                                    "end": 14691,
                                    "loc": {
                                      "start": {
                                        "line": 383,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 383,
                                        "column": 64
                                      }
                                    },
                                    "name": "execute"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "start": 14692,
                                    "end": 14703,
                                    "loc": {
                                      "start": {
                                        "line": 383,
                                        "column": 65
                                      },
                                      "end": {
                                        "line": 383,
                                        "column": 76
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 14692,
                                      "end": 14696,
                                      "loc": {
                                        "start": {
                                          "line": 383,
                                          "column": 65
                                        },
                                        "end": {
                                          "line": 383,
                                          "column": 69
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 14697,
                                      "end": 14703,
                                      "loc": {
                                        "start": {
                                          "line": 383,
                                          "column": 70
                                        },
                                        "end": {
                                          "line": 383,
                                          "column": 76
                                        }
                                      },
                                      "name": "server"
                                    },
                                    "computed": false
                                  }
                                ]
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 14705,
                                "end": 14709,
                                "loc": {
                                  "start": {
                                    "line": 383,
                                    "column": 78
                                  },
                                  "end": {
                                    "line": 383,
                                    "column": 82
                                  }
                                },
                                "name": "then"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ArrowFunctionExpression",
                                "start": 14710,
                                "end": 14814,
                                "loc": {
                                  "start": {
                                    "line": 383,
                                    "column": 83
                                  },
                                  "end": {
                                    "line": 386,
                                    "column": 9
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": false,
                                "async": false,
                                "params": [],
                                "body": {
                                  "type": "BlockStatement",
                                  "start": 14716,
                                  "end": 14814,
                                  "loc": {
                                    "start": {
                                      "line": 383,
                                      "column": 89
                                    },
                                    "end": {
                                      "line": 386,
                                      "column": 9
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 14730,
                                      "end": 14776,
                                      "loc": {
                                        "start": {
                                          "line": 384,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 384,
                                          "column": 58
                                        }
                                      },
                                      "expression": {
                                        "type": "LogicalExpression",
                                        "start": 14730,
                                        "end": 14775,
                                        "loc": {
                                          "start": {
                                            "line": 384,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 384,
                                            "column": 57
                                          }
                                        },
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 14730,
                                          "end": 14743,
                                          "loc": {
                                            "start": {
                                              "line": 384,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 384,
                                              "column": 25
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 14730,
                                            "end": 14736,
                                            "loc": {
                                              "start": {
                                                "line": 384,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 384,
                                                "column": 18
                                              }
                                            },
                                            "name": "sketch"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 14737,
                                            "end": 14743,
                                            "loc": {
                                              "start": {
                                                "line": 384,
                                                "column": 19
                                              },
                                              "end": {
                                                "line": 384,
                                                "column": 25
                                              }
                                            },
                                            "name": "parent"
                                          },
                                          "computed": false
                                        },
                                        "operator": "&&",
                                        "right": {
                                          "type": "CallExpression",
                                          "start": 14747,
                                          "end": 14775,
                                          "loc": {
                                            "start": {
                                              "line": 384,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 384,
                                              "column": 57
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 14747,
                                            "end": 14767,
                                            "loc": {
                                              "start": {
                                                "line": 384,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 384,
                                                "column": 49
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 14747,
                                              "end": 14760,
                                              "loc": {
                                                "start": {
                                                  "line": 384,
                                                  "column": 29
                                                },
                                                "end": {
                                                  "line": 384,
                                                  "column": 42
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 14747,
                                                "end": 14753,
                                                "loc": {
                                                  "start": {
                                                    "line": 384,
                                                    "column": 29
                                                  },
                                                  "end": {
                                                    "line": 384,
                                                    "column": 35
                                                  }
                                                },
                                                "name": "sketch"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 14754,
                                                "end": 14760,
                                                "loc": {
                                                  "start": {
                                                    "line": 384,
                                                    "column": 36
                                                  },
                                                  "end": {
                                                    "line": 384,
                                                    "column": 42
                                                  }
                                                },
                                                "name": "parent"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 14761,
                                              "end": 14767,
                                              "loc": {
                                                "start": {
                                                  "line": 384,
                                                  "column": 43
                                                },
                                                "end": {
                                                  "line": 384,
                                                  "column": 49
                                                }
                                              },
                                              "name": "remove"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 14768,
                                              "end": 14774,
                                              "loc": {
                                                "start": {
                                                  "line": 384,
                                                  "column": 50
                                                },
                                                "end": {
                                                  "line": 384,
                                                  "column": 56
                                                }
                                              },
                                              "name": "sketch"
                                            }
                                          ]
                                        }
                                      }
                                    },
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 14789,
                                      "end": 14804,
                                      "loc": {
                                        "start": {
                                          "line": 385,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 385,
                                          "column": 27
                                        }
                                      },
                                      "expression": {
                                        "type": "CallExpression",
                                        "start": 14789,
                                        "end": 14803,
                                        "loc": {
                                          "start": {
                                            "line": 385,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 385,
                                            "column": 26
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 14789,
                                          "end": 14801,
                                          "loc": {
                                            "start": {
                                              "line": 385,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 385,
                                              "column": 24
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 14789,
                                            "end": 14793,
                                            "loc": {
                                              "start": {
                                                "line": 385,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 385,
                                                "column": 16
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 14794,
                                            "end": 14801,
                                            "loc": {
                                              "start": {
                                                "line": 385,
                                                "column": 17
                                              },
                                              "end": {
                                                "line": 385,
                                                "column": 24
                                              }
                                            },
                                            "name": "refresh"
                                          },
                                          "computed": false
                                        },
                                        "arguments": []
                                      }
                                    }
                                  ]
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " orthographic camera for sketch mode",
                  "start": 14829,
                  "end": 14867,
                  "loc": {
                    "start": {
                      "line": 389,
                      "column": 4
                    },
                    "end": {
                      "line": 389,
                      "column": 42
                    }
                  },
                  "range": [
                    14829,
                    14867
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 14872,
              "end": 16627,
              "loc": {
                "start": {
                  "line": 390,
                  "column": 4
                },
                "end": {
                  "line": 421,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 14872,
                "end": 14898,
                "loc": {
                  "start": {
                    "line": 390,
                    "column": 4
                  },
                  "end": {
                    "line": 390,
                    "column": 30
                  }
                },
                "name": "switchToOrthographicCamera",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 14898,
                "end": 16627,
                "loc": {
                  "start": {
                    "line": 390,
                    "column": 30
                  },
                  "end": {
                    "line": 421,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 14899,
                    "end": 14903,
                    "loc": {
                      "start": {
                        "line": 390,
                        "column": 31
                      },
                      "end": {
                        "line": 390,
                        "column": 35
                      }
                    },
                    "name": "view"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 14905,
                  "end": 16627,
                  "loc": {
                    "start": {
                      "line": 390,
                      "column": 37
                    },
                    "end": {
                      "line": 421,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 14915,
                      "end": 15940,
                      "loc": {
                        "start": {
                          "line": 391,
                          "column": 8
                        },
                        "end": {
                          "line": 411,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 14919,
                        "end": 14945,
                        "loc": {
                          "start": {
                            "line": 391,
                            "column": 12
                          },
                          "end": {
                            "line": 391,
                            "column": 38
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "MemberExpression",
                          "start": 14920,
                          "end": 14945,
                          "loc": {
                            "start": {
                              "line": 391,
                              "column": 13
                            },
                            "end": {
                              "line": 391,
                              "column": 38
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 14920,
                            "end": 14924,
                            "loc": {
                              "start": {
                                "line": 391,
                                "column": 13
                              },
                              "end": {
                                "line": 391,
                                "column": 17
                              }
                            },
                            "name": "view"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14925,
                            "end": 14945,
                            "loc": {
                              "start": {
                                "line": 391,
                                "column": 18
                              },
                              "end": {
                                "line": 391,
                                "column": 38
                              }
                            },
                            "name": "__orthographicCamera"
                          },
                          "computed": false
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 14947,
                        "end": 15940,
                        "loc": {
                          "start": {
                            "line": 391,
                            "column": 40
                          },
                          "end": {
                            "line": 411,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 14961,
                            "end": 15033,
                            "loc": {
                              "start": {
                                "line": 392,
                                "column": 12
                              },
                              "end": {
                                "line": 392,
                                "column": 84
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 14965,
                                "end": 15032,
                                "loc": {
                                  "start": {
                                    "line": 392,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 392,
                                    "column": 83
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 14965,
                                  "end": 14977,
                                  "loc": {
                                    "start": {
                                      "line": 392,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 392,
                                      "column": 28
                                    }
                                  },
                                  "name": "orthographic"
                                },
                                "init": {
                                  "type": "NewExpression",
                                  "start": 14980,
                                  "end": 15032,
                                  "loc": {
                                    "start": {
                                      "line": 392,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 392,
                                      "column": 83
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 14984,
                                    "end": 15008,
                                    "loc": {
                                      "start": {
                                        "line": 392,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 392,
                                        "column": 59
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 14984,
                                      "end": 14989,
                                      "loc": {
                                        "start": {
                                          "line": 392,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 392,
                                          "column": 40
                                        }
                                      },
                                      "name": "THREE"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 14990,
                                      "end": 15008,
                                      "loc": {
                                        "start": {
                                          "line": 392,
                                          "column": 41
                                        },
                                        "end": {
                                          "line": 392,
                                          "column": 59
                                        }
                                      },
                                      "name": "OrthographicCamera"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Literal",
                                      "start": 15010,
                                      "end": 15011,
                                      "loc": {
                                        "start": {
                                          "line": 392,
                                          "column": 61
                                        },
                                        "end": {
                                          "line": 392,
                                          "column": 62
                                        }
                                      },
                                      "value": 0,
                                      "rawValue": 0,
                                      "raw": "0"
                                    },
                                    {
                                      "type": "Literal",
                                      "start": 15013,
                                      "end": 15014,
                                      "loc": {
                                        "start": {
                                          "line": 392,
                                          "column": 64
                                        },
                                        "end": {
                                          "line": 392,
                                          "column": 65
                                        }
                                      },
                                      "value": 0,
                                      "rawValue": 0,
                                      "raw": "0"
                                    },
                                    {
                                      "type": "Literal",
                                      "start": 15016,
                                      "end": 15017,
                                      "loc": {
                                        "start": {
                                          "line": 392,
                                          "column": 67
                                        },
                                        "end": {
                                          "line": 392,
                                          "column": 68
                                        }
                                      },
                                      "value": 0,
                                      "rawValue": 0,
                                      "raw": "0"
                                    },
                                    {
                                      "type": "Literal",
                                      "start": 15019,
                                      "end": 15020,
                                      "loc": {
                                        "start": {
                                          "line": 392,
                                          "column": 70
                                        },
                                        "end": {
                                          "line": 392,
                                          "column": 71
                                        }
                                      },
                                      "value": 0,
                                      "rawValue": 0,
                                      "raw": "0"
                                    },
                                    {
                                      "type": "Literal",
                                      "start": 15022,
                                      "end": 15023,
                                      "loc": {
                                        "start": {
                                          "line": 392,
                                          "column": 73
                                        },
                                        "end": {
                                          "line": 392,
                                          "column": 74
                                        }
                                      },
                                      "value": 1,
                                      "rawValue": 1,
                                      "raw": "1"
                                    },
                                    {
                                      "type": "Literal",
                                      "start": 15025,
                                      "end": 15030,
                                      "loc": {
                                        "start": {
                                          "line": 392,
                                          "column": 76
                                        },
                                        "end": {
                                          "line": 392,
                                          "column": 81
                                        }
                                      },
                                      "value": 20000,
                                      "rawValue": 20000,
                                      "raw": "20000"
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 15046,
                            "end": 15104,
                            "loc": {
                              "start": {
                                "line": 393,
                                "column": 12
                              },
                              "end": {
                                "line": 393,
                                "column": 70
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 15050,
                                "end": 15103,
                                "loc": {
                                  "start": {
                                    "line": 393,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 393,
                                    "column": 69
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 15050,
                                  "end": 15053,
                                  "loc": {
                                    "start": {
                                      "line": 393,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 393,
                                      "column": 19
                                    }
                                  },
                                  "name": "box"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 15056,
                                  "end": 15103,
                                  "loc": {
                                    "start": {
                                      "line": 393,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 393,
                                      "column": 69
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 15056,
                                    "end": 15086,
                                    "loc": {
                                      "start": {
                                        "line": 393,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 393,
                                        "column": 52
                                      }
                                    },
                                    "object": {
                                      "type": "NewExpression",
                                      "start": 15056,
                                      "end": 15072,
                                      "loc": {
                                        "start": {
                                          "line": 393,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 393,
                                          "column": 38
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 15060,
                                        "end": 15070,
                                        "loc": {
                                          "start": {
                                            "line": 393,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 393,
                                            "column": 36
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 15060,
                                          "end": 15065,
                                          "loc": {
                                            "start": {
                                              "line": 393,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 393,
                                              "column": 31
                                            }
                                          },
                                          "name": "THREE"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 15066,
                                          "end": 15070,
                                          "loc": {
                                            "start": {
                                              "line": 393,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 393,
                                              "column": 36
                                            }
                                          },
                                          "name": "Box3"
                                        },
                                        "computed": false
                                      },
                                      "arguments": []
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 15073,
                                      "end": 15086,
                                      "loc": {
                                        "start": {
                                          "line": 393,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 393,
                                          "column": 52
                                        }
                                      },
                                      "name": "setFromObject"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "MemberExpression",
                                      "start": 15087,
                                      "end": 15102,
                                      "loc": {
                                        "start": {
                                          "line": 393,
                                          "column": 53
                                        },
                                        "end": {
                                          "line": 393,
                                          "column": 68
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 15087,
                                        "end": 15091,
                                        "loc": {
                                          "start": {
                                            "line": 393,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 393,
                                            "column": 57
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 15092,
                                        "end": 15102,
                                        "loc": {
                                          "start": {
                                            "line": 393,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 393,
                                            "column": 68
                                          }
                                        },
                                        "name": "rootObject"
                                      },
                                      "computed": false
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15117,
                            "end": 15204,
                            "loc": {
                              "start": {
                                "line": 394,
                                "column": 12
                              },
                              "end": {
                                "line": 394,
                                "column": 99
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 15117,
                              "end": 15203,
                              "loc": {
                                "start": {
                                  "line": 394,
                                  "column": 12
                                },
                                "end": {
                                  "line": 394,
                                  "column": 98
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 15117,
                                "end": 15137,
                                "loc": {
                                  "start": {
                                    "line": 394,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 394,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 15117,
                                  "end": 15129,
                                  "loc": {
                                    "start": {
                                      "line": 394,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 394,
                                      "column": 24
                                    }
                                  },
                                  "name": "orthographic"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15130,
                                  "end": 15137,
                                  "loc": {
                                    "start": {
                                      "line": 394,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 394,
                                      "column": 32
                                    }
                                  },
                                  "name": "defSize"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "AssignmentExpression",
                                "start": 15140,
                                "end": 15203,
                                "loc": {
                                  "start": {
                                    "line": 394,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 394,
                                    "column": 98
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 15140,
                                  "end": 15157,
                                  "loc": {
                                    "start": {
                                      "line": 394,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 394,
                                      "column": 52
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 15140,
                                    "end": 15152,
                                    "loc": {
                                      "start": {
                                        "line": 394,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 394,
                                        "column": 47
                                      }
                                    },
                                    "name": "orthographic"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 15153,
                                    "end": 15157,
                                    "loc": {
                                      "start": {
                                        "line": 394,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 394,
                                        "column": 52
                                      }
                                    },
                                    "name": "size"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "BinaryExpression",
                                  "start": 15160,
                                  "end": 15203,
                                  "loc": {
                                    "start": {
                                      "line": 394,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 394,
                                      "column": 98
                                    }
                                  },
                                  "left": {
                                    "type": "CallExpression",
                                    "start": 15160,
                                    "end": 15197,
                                    "loc": {
                                      "start": {
                                        "line": 394,
                                        "column": 55
                                      },
                                      "end": {
                                        "line": 394,
                                        "column": 92
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 15160,
                                      "end": 15195,
                                      "loc": {
                                        "start": {
                                          "line": 394,
                                          "column": 55
                                        },
                                        "end": {
                                          "line": 394,
                                          "column": 90
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 15160,
                                        "end": 15188,
                                        "loc": {
                                          "start": {
                                            "line": 394,
                                            "column": 55
                                          },
                                          "end": {
                                            "line": 394,
                                            "column": 83
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 15160,
                                          "end": 15179,
                                          "loc": {
                                            "start": {
                                              "line": 394,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 394,
                                              "column": 74
                                            }
                                          },
                                          "object": {
                                            "type": "CallExpression",
                                            "start": 15160,
                                            "end": 15175,
                                            "loc": {
                                              "start": {
                                                "line": 394,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 394,
                                                "column": 70
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 15160,
                                              "end": 15173,
                                              "loc": {
                                                "start": {
                                                  "line": 394,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 394,
                                                  "column": 68
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 15160,
                                                "end": 15167,
                                                "loc": {
                                                  "start": {
                                                    "line": 394,
                                                    "column": 55
                                                  },
                                                  "end": {
                                                    "line": 394,
                                                    "column": 62
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 15160,
                                                  "end": 15163,
                                                  "loc": {
                                                    "start": {
                                                      "line": 394,
                                                      "column": 55
                                                    },
                                                    "end": {
                                                      "line": 394,
                                                      "column": 58
                                                    }
                                                  },
                                                  "name": "box"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 15164,
                                                  "end": 15167,
                                                  "loc": {
                                                    "start": {
                                                      "line": 394,
                                                      "column": 59
                                                    },
                                                    "end": {
                                                      "line": 394,
                                                      "column": 62
                                                    }
                                                  },
                                                  "name": "max"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 15168,
                                                "end": 15173,
                                                "loc": {
                                                  "start": {
                                                    "line": 394,
                                                    "column": 63
                                                  },
                                                  "end": {
                                                    "line": 394,
                                                    "column": 68
                                                  }
                                                },
                                                "name": "clone"
                                              },
                                              "computed": false
                                            },
                                            "arguments": []
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 15176,
                                            "end": 15179,
                                            "loc": {
                                              "start": {
                                                "line": 394,
                                                "column": 71
                                              },
                                              "end": {
                                                "line": 394,
                                                "column": 74
                                              }
                                            },
                                            "name": "sub"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "MemberExpression",
                                            "start": 15180,
                                            "end": 15187,
                                            "loc": {
                                              "start": {
                                                "line": 394,
                                                "column": 75
                                              },
                                              "end": {
                                                "line": 394,
                                                "column": 82
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 15180,
                                              "end": 15183,
                                              "loc": {
                                                "start": {
                                                  "line": 394,
                                                  "column": 75
                                                },
                                                "end": {
                                                  "line": 394,
                                                  "column": 78
                                                }
                                              },
                                              "name": "box"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 15184,
                                              "end": 15187,
                                              "loc": {
                                                "start": {
                                                  "line": 394,
                                                  "column": 79
                                                },
                                                "end": {
                                                  "line": 394,
                                                  "column": 82
                                                }
                                              },
                                              "name": "min"
                                            },
                                            "computed": false
                                          }
                                        ]
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 15189,
                                        "end": 15195,
                                        "loc": {
                                          "start": {
                                            "line": 394,
                                            "column": 84
                                          },
                                          "end": {
                                            "line": 394,
                                            "column": 90
                                          }
                                        },
                                        "name": "length"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "Literal",
                                    "start": 15200,
                                    "end": 15203,
                                    "loc": {
                                      "start": {
                                        "line": 394,
                                        "column": 95
                                      },
                                      "end": {
                                        "line": 394,
                                        "column": 98
                                      }
                                    },
                                    "value": 1.5,
                                    "rawValue": 1.5,
                                    "raw": "1.5"
                                  }
                                }
                              }
                            }
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 15217,
                            "end": 15301,
                            "loc": {
                              "start": {
                                "line": 395,
                                "column": 12
                              },
                              "end": {
                                "line": 395,
                                "column": 96
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 15221,
                                "end": 15300,
                                "loc": {
                                  "start": {
                                    "line": 395,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 395,
                                    "column": 95
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 15221,
                                  "end": 15227,
                                  "loc": {
                                    "start": {
                                      "line": 395,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 395,
                                      "column": 22
                                    }
                                  },
                                  "name": "aspect"
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 15230,
                                  "end": 15300,
                                  "loc": {
                                    "start": {
                                      "line": 395,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 395,
                                      "column": 95
                                    }
                                  },
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 15230,
                                    "end": 15263,
                                    "loc": {
                                      "start": {
                                        "line": 395,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 395,
                                        "column": 58
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 15230,
                                      "end": 15251,
                                      "loc": {
                                        "start": {
                                          "line": 395,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 395,
                                          "column": 46
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 15230,
                                        "end": 15247,
                                        "loc": {
                                          "start": {
                                            "line": 395,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 395,
                                            "column": 42
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 15230,
                                          "end": 15234,
                                          "loc": {
                                            "start": {
                                              "line": 395,
                                              "column": 25
                                            },
                                            "end": {
                                              "line": 395,
                                              "column": 29
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 15235,
                                          "end": 15247,
                                          "loc": {
                                            "start": {
                                              "line": 395,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 395,
                                              "column": 42
                                            }
                                          },
                                          "name": "__parentView"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 15248,
                                        "end": 15251,
                                        "loc": {
                                          "start": {
                                            "line": 395,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 395,
                                            "column": 46
                                          }
                                        },
                                        "name": "dom"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 15252,
                                      "end": 15263,
                                      "loc": {
                                        "start": {
                                          "line": 395,
                                          "column": 47
                                        },
                                        "end": {
                                          "line": 395,
                                          "column": 58
                                        }
                                      },
                                      "name": "clientWidth"
                                    },
                                    "computed": false
                                  },
                                  "operator": "/",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 15266,
                                    "end": 15300,
                                    "loc": {
                                      "start": {
                                        "line": 395,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 395,
                                        "column": 95
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 15266,
                                      "end": 15287,
                                      "loc": {
                                        "start": {
                                          "line": 395,
                                          "column": 61
                                        },
                                        "end": {
                                          "line": 395,
                                          "column": 82
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 15266,
                                        "end": 15283,
                                        "loc": {
                                          "start": {
                                            "line": 395,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 395,
                                            "column": 78
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 15266,
                                          "end": 15270,
                                          "loc": {
                                            "start": {
                                              "line": 395,
                                              "column": 61
                                            },
                                            "end": {
                                              "line": 395,
                                              "column": 65
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 15271,
                                          "end": 15283,
                                          "loc": {
                                            "start": {
                                              "line": 395,
                                              "column": 66
                                            },
                                            "end": {
                                              "line": 395,
                                              "column": 78
                                            }
                                          },
                                          "name": "__parentView"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 15284,
                                        "end": 15287,
                                        "loc": {
                                          "start": {
                                            "line": 395,
                                            "column": 79
                                          },
                                          "end": {
                                            "line": 395,
                                            "column": 82
                                          }
                                        },
                                        "name": "dom"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 15288,
                                      "end": 15300,
                                      "loc": {
                                        "start": {
                                          "line": 395,
                                          "column": 83
                                        },
                                        "end": {
                                          "line": 395,
                                          "column": 95
                                        }
                                      },
                                      "name": "clientHeight"
                                    },
                                    "computed": false
                                  }
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15314,
                            "end": 15367,
                            "loc": {
                              "start": {
                                "line": 396,
                                "column": 12
                              },
                              "end": {
                                "line": 396,
                                "column": 65
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 15314,
                              "end": 15366,
                              "loc": {
                                "start": {
                                  "line": 396,
                                  "column": 12
                                },
                                "end": {
                                  "line": 396,
                                  "column": 64
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 15314,
                                "end": 15331,
                                "loc": {
                                  "start": {
                                    "line": 396,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 396,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 15314,
                                  "end": 15326,
                                  "loc": {
                                    "start": {
                                      "line": 396,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 396,
                                      "column": 24
                                    }
                                  },
                                  "name": "orthographic"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15327,
                                  "end": 15331,
                                  "loc": {
                                    "start": {
                                      "line": 396,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 396,
                                      "column": 29
                                    }
                                  },
                                  "name": "left"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "BinaryExpression",
                                "start": 15334,
                                "end": 15366,
                                "loc": {
                                  "start": {
                                    "line": 396,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 396,
                                    "column": 64
                                  }
                                },
                                "left": {
                                  "type": "BinaryExpression",
                                  "start": 15334,
                                  "end": 15362,
                                  "loc": {
                                    "start": {
                                      "line": 396,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 396,
                                      "column": 60
                                    }
                                  },
                                  "left": {
                                    "type": "UnaryExpression",
                                    "start": 15334,
                                    "end": 15353,
                                    "loc": {
                                      "start": {
                                        "line": 396,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 396,
                                        "column": 51
                                      }
                                    },
                                    "operator": "-",
                                    "prefix": true,
                                    "argument": {
                                      "type": "MemberExpression",
                                      "start": 15336,
                                      "end": 15353,
                                      "loc": {
                                        "start": {
                                          "line": 396,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 396,
                                          "column": 51
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 15336,
                                        "end": 15348,
                                        "loc": {
                                          "start": {
                                            "line": 396,
                                            "column": 34
                                          },
                                          "end": {
                                            "line": 396,
                                            "column": 46
                                          }
                                        },
                                        "name": "orthographic"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 15349,
                                        "end": 15353,
                                        "loc": {
                                          "start": {
                                            "line": 396,
                                            "column": 47
                                          },
                                          "end": {
                                            "line": 396,
                                            "column": 51
                                          }
                                        },
                                        "name": "size"
                                      },
                                      "computed": false
                                    }
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 15356,
                                    "end": 15362,
                                    "loc": {
                                      "start": {
                                        "line": 396,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 396,
                                        "column": 60
                                      }
                                    },
                                    "name": "aspect"
                                  }
                                },
                                "operator": "/",
                                "right": {
                                  "type": "Literal",
                                  "start": 15365,
                                  "end": 15366,
                                  "loc": {
                                    "start": {
                                      "line": 396,
                                      "column": 63
                                    },
                                    "end": {
                                      "line": 396,
                                      "column": 64
                                    }
                                  },
                                  "value": 2,
                                  "rawValue": 2,
                                  "raw": "2"
                                }
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15380,
                            "end": 15432,
                            "loc": {
                              "start": {
                                "line": 397,
                                "column": 12
                              },
                              "end": {
                                "line": 397,
                                "column": 64
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 15380,
                              "end": 15431,
                              "loc": {
                                "start": {
                                  "line": 397,
                                  "column": 12
                                },
                                "end": {
                                  "line": 397,
                                  "column": 63
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 15380,
                                "end": 15398,
                                "loc": {
                                  "start": {
                                    "line": 397,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 397,
                                    "column": 30
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 15380,
                                  "end": 15392,
                                  "loc": {
                                    "start": {
                                      "line": 397,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 397,
                                      "column": 24
                                    }
                                  },
                                  "name": "orthographic"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15393,
                                  "end": 15398,
                                  "loc": {
                                    "start": {
                                      "line": 397,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 397,
                                      "column": 30
                                    }
                                  },
                                  "name": "right"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "BinaryExpression",
                                "start": 15401,
                                "end": 15431,
                                "loc": {
                                  "start": {
                                    "line": 397,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 397,
                                    "column": 63
                                  }
                                },
                                "left": {
                                  "type": "BinaryExpression",
                                  "start": 15401,
                                  "end": 15427,
                                  "loc": {
                                    "start": {
                                      "line": 397,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 397,
                                      "column": 59
                                    }
                                  },
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 15401,
                                    "end": 15418,
                                    "loc": {
                                      "start": {
                                        "line": 397,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 397,
                                        "column": 50
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 15401,
                                      "end": 15413,
                                      "loc": {
                                        "start": {
                                          "line": 397,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 397,
                                          "column": 45
                                        }
                                      },
                                      "name": "orthographic"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 15414,
                                      "end": 15418,
                                      "loc": {
                                        "start": {
                                          "line": 397,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 397,
                                          "column": 50
                                        }
                                      },
                                      "name": "size"
                                    },
                                    "computed": false
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 15421,
                                    "end": 15427,
                                    "loc": {
                                      "start": {
                                        "line": 397,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 397,
                                        "column": 59
                                      }
                                    },
                                    "name": "aspect"
                                  }
                                },
                                "operator": "/",
                                "right": {
                                  "type": "Literal",
                                  "start": 15430,
                                  "end": 15431,
                                  "loc": {
                                    "start": {
                                      "line": 397,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 397,
                                      "column": 63
                                    }
                                  },
                                  "value": 2,
                                  "rawValue": 2,
                                  "raw": "2"
                                }
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15445,
                            "end": 15486,
                            "loc": {
                              "start": {
                                "line": 398,
                                "column": 12
                              },
                              "end": {
                                "line": 398,
                                "column": 53
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 15445,
                              "end": 15485,
                              "loc": {
                                "start": {
                                  "line": 398,
                                  "column": 12
                                },
                                "end": {
                                  "line": 398,
                                  "column": 52
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 15445,
                                "end": 15461,
                                "loc": {
                                  "start": {
                                    "line": 398,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 398,
                                    "column": 28
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 15445,
                                  "end": 15457,
                                  "loc": {
                                    "start": {
                                      "line": 398,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 398,
                                      "column": 24
                                    }
                                  },
                                  "name": "orthographic"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15458,
                                  "end": 15461,
                                  "loc": {
                                    "start": {
                                      "line": 398,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 398,
                                      "column": 28
                                    }
                                  },
                                  "name": "top"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "BinaryExpression",
                                "start": 15464,
                                "end": 15485,
                                "loc": {
                                  "start": {
                                    "line": 398,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 398,
                                    "column": 52
                                  }
                                },
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 15464,
                                  "end": 15481,
                                  "loc": {
                                    "start": {
                                      "line": 398,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 398,
                                      "column": 48
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 15464,
                                    "end": 15476,
                                    "loc": {
                                      "start": {
                                        "line": 398,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 398,
                                        "column": 43
                                      }
                                    },
                                    "name": "orthographic"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 15477,
                                    "end": 15481,
                                    "loc": {
                                      "start": {
                                        "line": 398,
                                        "column": 44
                                      },
                                      "end": {
                                        "line": 398,
                                        "column": 48
                                      }
                                    },
                                    "name": "size"
                                  },
                                  "computed": false
                                },
                                "operator": "/",
                                "right": {
                                  "type": "Literal",
                                  "start": 15484,
                                  "end": 15485,
                                  "loc": {
                                    "start": {
                                      "line": 398,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 398,
                                      "column": 52
                                    }
                                  },
                                  "value": 2,
                                  "rawValue": 2,
                                  "raw": "2"
                                }
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15499,
                            "end": 15545,
                            "loc": {
                              "start": {
                                "line": 399,
                                "column": 12
                              },
                              "end": {
                                "line": 399,
                                "column": 58
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 15499,
                              "end": 15544,
                              "loc": {
                                "start": {
                                  "line": 399,
                                  "column": 12
                                },
                                "end": {
                                  "line": 399,
                                  "column": 57
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 15499,
                                "end": 15518,
                                "loc": {
                                  "start": {
                                    "line": 399,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 399,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 15499,
                                  "end": 15511,
                                  "loc": {
                                    "start": {
                                      "line": 399,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 399,
                                      "column": 24
                                    }
                                  },
                                  "name": "orthographic"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15512,
                                  "end": 15518,
                                  "loc": {
                                    "start": {
                                      "line": 399,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 399,
                                      "column": 31
                                    }
                                  },
                                  "name": "bottom"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "BinaryExpression",
                                "start": 15521,
                                "end": 15544,
                                "loc": {
                                  "start": {
                                    "line": 399,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 399,
                                    "column": 57
                                  }
                                },
                                "left": {
                                  "type": "UnaryExpression",
                                  "start": 15521,
                                  "end": 15540,
                                  "loc": {
                                    "start": {
                                      "line": 399,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 399,
                                      "column": 53
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "MemberExpression",
                                    "start": 15523,
                                    "end": 15540,
                                    "loc": {
                                      "start": {
                                        "line": 399,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 399,
                                        "column": 53
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 15523,
                                      "end": 15535,
                                      "loc": {
                                        "start": {
                                          "line": 399,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 399,
                                          "column": 48
                                        }
                                      },
                                      "name": "orthographic"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 15536,
                                      "end": 15540,
                                      "loc": {
                                        "start": {
                                          "line": 399,
                                          "column": 49
                                        },
                                        "end": {
                                          "line": 399,
                                          "column": 53
                                        }
                                      },
                                      "name": "size"
                                    },
                                    "computed": false
                                  }
                                },
                                "operator": "/",
                                "right": {
                                  "type": "Literal",
                                  "start": 15543,
                                  "end": 15544,
                                  "loc": {
                                    "start": {
                                      "line": 399,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 399,
                                      "column": 57
                                    }
                                  },
                                  "value": 2,
                                  "rawValue": 2,
                                  "raw": "2"
                                }
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15559,
                            "end": 15608,
                            "loc": {
                              "start": {
                                "line": 401,
                                "column": 12
                              },
                              "end": {
                                "line": 401,
                                "column": 61
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 15559,
                              "end": 15607,
                              "loc": {
                                "start": {
                                  "line": 401,
                                  "column": 12
                                },
                                "end": {
                                  "line": 401,
                                  "column": 60
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 15559,
                                "end": 15578,
                                "loc": {
                                  "start": {
                                    "line": 401,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 401,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 15559,
                                  "end": 15571,
                                  "loc": {
                                    "start": {
                                      "line": 401,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 401,
                                      "column": 24
                                    }
                                  },
                                  "name": "orthographic"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15572,
                                  "end": 15578,
                                  "loc": {
                                    "start": {
                                      "line": 401,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 401,
                                      "column": 31
                                    }
                                  },
                                  "name": "target"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "NewExpression",
                                "start": 15581,
                                "end": 15607,
                                "loc": {
                                  "start": {
                                    "line": 401,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 401,
                                    "column": 60
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 15585,
                                  "end": 15598,
                                  "loc": {
                                    "start": {
                                      "line": 401,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 401,
                                      "column": 51
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 15585,
                                    "end": 15590,
                                    "loc": {
                                      "start": {
                                        "line": 401,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 401,
                                        "column": 43
                                      }
                                    },
                                    "name": "THREE"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 15591,
                                    "end": 15598,
                                    "loc": {
                                      "start": {
                                        "line": 401,
                                        "column": 44
                                      },
                                      "end": {
                                        "line": 401,
                                        "column": 51
                                      }
                                    },
                                    "name": "Vector3"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 15599,
                                    "end": 15600,
                                    "loc": {
                                      "start": {
                                        "line": 401,
                                        "column": 52
                                      },
                                      "end": {
                                        "line": 401,
                                        "column": 53
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  {
                                    "type": "Literal",
                                    "start": 15602,
                                    "end": 15603,
                                    "loc": {
                                      "start": {
                                        "line": 401,
                                        "column": 55
                                      },
                                      "end": {
                                        "line": 401,
                                        "column": 56
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  {
                                    "type": "Literal",
                                    "start": 15605,
                                    "end": 15606,
                                    "loc": {
                                      "start": {
                                        "line": 401,
                                        "column": 58
                                      },
                                      "end": {
                                        "line": 401,
                                        "column": 59
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  }
                                ]
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15621,
                            "end": 15662,
                            "loc": {
                              "start": {
                                "line": 402,
                                "column": 12
                              },
                              "end": {
                                "line": 402,
                                "column": 53
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15621,
                              "end": 15661,
                              "loc": {
                                "start": {
                                  "line": 402,
                                  "column": 12
                                },
                                "end": {
                                  "line": 402,
                                  "column": 52
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 15621,
                                "end": 15640,
                                "loc": {
                                  "start": {
                                    "line": 402,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 402,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 15621,
                                  "end": 15633,
                                  "loc": {
                                    "start": {
                                      "line": 402,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 402,
                                      "column": 24
                                    }
                                  },
                                  "name": "orthographic"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15634,
                                  "end": 15640,
                                  "loc": {
                                    "start": {
                                      "line": 402,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 402,
                                      "column": 31
                                    }
                                  },
                                  "name": "lookAt"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 15641,
                                  "end": 15660,
                                  "loc": {
                                    "start": {
                                      "line": 402,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 402,
                                      "column": 51
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 15641,
                                    "end": 15653,
                                    "loc": {
                                      "start": {
                                        "line": 402,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 402,
                                        "column": 44
                                      }
                                    },
                                    "name": "orthographic"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 15654,
                                    "end": 15660,
                                    "loc": {
                                      "start": {
                                        "line": 402,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 402,
                                        "column": 51
                                      }
                                    },
                                    "name": "target"
                                  },
                                  "computed": false
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15675,
                            "end": 15713,
                            "loc": {
                              "start": {
                                "line": 403,
                                "column": 12
                              },
                              "end": {
                                "line": 403,
                                "column": 50
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15675,
                              "end": 15712,
                              "loc": {
                                "start": {
                                  "line": 403,
                                  "column": 12
                                },
                                "end": {
                                  "line": 403,
                                  "column": 49
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 15675,
                                "end": 15700,
                                "loc": {
                                  "start": {
                                    "line": 403,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 403,
                                    "column": 37
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 15675,
                                  "end": 15696,
                                  "loc": {
                                    "start": {
                                      "line": 403,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 403,
                                      "column": 33
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 15675,
                                    "end": 15687,
                                    "loc": {
                                      "start": {
                                        "line": 403,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 403,
                                        "column": 24
                                      }
                                    },
                                    "name": "orthographic"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 15688,
                                    "end": 15696,
                                    "loc": {
                                      "start": {
                                        "line": 403,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 403,
                                        "column": 33
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15697,
                                  "end": 15700,
                                  "loc": {
                                    "start": {
                                      "line": 403,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 403,
                                      "column": 37
                                    }
                                  },
                                  "name": "set"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 15701,
                                  "end": 15702,
                                  "loc": {
                                    "start": {
                                      "line": 403,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 403,
                                      "column": 39
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15704,
                                  "end": 15705,
                                  "loc": {
                                    "start": {
                                      "line": 403,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 403,
                                      "column": 42
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15707,
                                  "end": 15711,
                                  "loc": {
                                    "start": {
                                      "line": 403,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 403,
                                      "column": 48
                                    }
                                  },
                                  "value": 1000,
                                  "rawValue": 1000,
                                  "raw": "1000"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15726,
                            "end": 15755,
                            "loc": {
                              "start": {
                                "line": 404,
                                "column": 12
                              },
                              "end": {
                                "line": 404,
                                "column": 41
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15726,
                              "end": 15754,
                              "loc": {
                                "start": {
                                  "line": 404,
                                  "column": 12
                                },
                                "end": {
                                  "line": 404,
                                  "column": 40
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 15726,
                                "end": 15745,
                                "loc": {
                                  "start": {
                                    "line": 404,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 404,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 15726,
                                  "end": 15741,
                                  "loc": {
                                    "start": {
                                      "line": 404,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 404,
                                      "column": 27
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 15726,
                                    "end": 15738,
                                    "loc": {
                                      "start": {
                                        "line": 404,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 404,
                                        "column": 24
                                      }
                                    },
                                    "name": "orthographic"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 15739,
                                    "end": 15741,
                                    "loc": {
                                      "start": {
                                        "line": 404,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 404,
                                        "column": 27
                                      }
                                    },
                                    "name": "up"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15742,
                                  "end": 15745,
                                  "loc": {
                                    "start": {
                                      "line": 404,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 404,
                                      "column": 31
                                    }
                                  },
                                  "name": "set"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 15746,
                                  "end": 15747,
                                  "loc": {
                                    "start": {
                                      "line": 404,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 404,
                                      "column": 33
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15749,
                                  "end": 15750,
                                  "loc": {
                                    "start": {
                                      "line": 404,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 404,
                                      "column": 36
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15752,
                                  "end": 15753,
                                  "loc": {
                                    "start": {
                                      "line": 404,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 404,
                                      "column": 39
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15769,
                            "end": 15808,
                            "loc": {
                              "start": {
                                "line": 406,
                                "column": 12
                              },
                              "end": {
                                "line": 406,
                                "column": 51
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 15769,
                              "end": 15807,
                              "loc": {
                                "start": {
                                  "line": 406,
                                  "column": 12
                                },
                                "end": {
                                  "line": 406,
                                  "column": 50
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 15769,
                                "end": 15793,
                                "loc": {
                                  "start": {
                                    "line": 406,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 406,
                                    "column": 36
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 15769,
                                  "end": 15773,
                                  "loc": {
                                    "start": {
                                      "line": 406,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 406,
                                      "column": 16
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15774,
                                  "end": 15793,
                                  "loc": {
                                    "start": {
                                      "line": 406,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 406,
                                      "column": 36
                                    }
                                  },
                                  "name": "__perspectiveCamera"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "MemberExpression",
                                "start": 15796,
                                "end": 15807,
                                "loc": {
                                  "start": {
                                    "line": 406,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 406,
                                    "column": 50
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 15796,
                                  "end": 15800,
                                  "loc": {
                                    "start": {
                                      "line": 406,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 406,
                                      "column": 43
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15801,
                                  "end": 15807,
                                  "loc": {
                                    "start": {
                                      "line": 406,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 406,
                                      "column": 50
                                    }
                                  },
                                  "name": "camera"
                                },
                                "computed": false
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15821,
                            "end": 15862,
                            "loc": {
                              "start": {
                                "line": 407,
                                "column": 12
                              },
                              "end": {
                                "line": 407,
                                "column": 53
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 15821,
                              "end": 15861,
                              "loc": {
                                "start": {
                                  "line": 407,
                                  "column": 12
                                },
                                "end": {
                                  "line": 407,
                                  "column": 52
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 15821,
                                "end": 15846,
                                "loc": {
                                  "start": {
                                    "line": 407,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 407,
                                    "column": 37
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 15821,
                                  "end": 15825,
                                  "loc": {
                                    "start": {
                                      "line": 407,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 407,
                                      "column": 16
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15826,
                                  "end": 15846,
                                  "loc": {
                                    "start": {
                                      "line": 407,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 407,
                                      "column": 37
                                    }
                                  },
                                  "name": "__orthographicCamera"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Identifier",
                                "start": 15849,
                                "end": 15861,
                                "loc": {
                                  "start": {
                                    "line": 407,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 407,
                                    "column": 52
                                  }
                                },
                                "name": "orthographic"
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15876,
                            "end": 15929,
                            "loc": {
                              "start": {
                                "line": 409,
                                "column": 12
                              },
                              "end": {
                                "line": 409,
                                "column": 65
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 15876,
                              "end": 15928,
                              "loc": {
                                "start": {
                                  "line": 409,
                                  "column": 12
                                },
                                "end": {
                                  "line": 409,
                                  "column": 64
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 15876,
                                "end": 15901,
                                "loc": {
                                  "start": {
                                    "line": 409,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 409,
                                    "column": 37
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 15876,
                                  "end": 15880,
                                  "loc": {
                                    "start": {
                                      "line": 409,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 409,
                                      "column": 16
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15881,
                                  "end": 15901,
                                  "loc": {
                                    "start": {
                                      "line": 409,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 409,
                                      "column": 37
                                    }
                                  },
                                  "name": "__orthographicAspect"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "BinaryExpression",
                                "start": 15904,
                                "end": 15928,
                                "loc": {
                                  "start": {
                                    "line": 409,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 409,
                                    "column": 64
                                  }
                                },
                                "left": {
                                  "type": "Literal",
                                  "start": 15904,
                                  "end": 15908,
                                  "loc": {
                                    "start": {
                                      "line": 409,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 409,
                                      "column": 44
                                    }
                                  },
                                  "value": 1000,
                                  "rawValue": 1000,
                                  "raw": "1000"
                                },
                                "operator": "/",
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 15911,
                                  "end": 15928,
                                  "loc": {
                                    "start": {
                                      "line": 409,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 409,
                                      "column": 64
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 15911,
                                    "end": 15923,
                                    "loc": {
                                      "start": {
                                        "line": 409,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 409,
                                        "column": 59
                                      }
                                    },
                                    "name": "orthographic"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 15924,
                                    "end": 15928,
                                    "loc": {
                                      "start": {
                                        "line": 409,
                                        "column": 60
                                      },
                                      "end": {
                                        "line": 409,
                                        "column": 64
                                      }
                                    },
                                    "name": "size"
                                  },
                                  "computed": false
                                }
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 15950,
                      "end": 16061,
                      "loc": {
                        "start": {
                          "line": 413,
                          "column": 8
                        },
                        "end": {
                          "line": 413,
                          "column": 119
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 15950,
                        "end": 16060,
                        "loc": {
                          "start": {
                            "line": 413,
                            "column": 8
                          },
                          "end": {
                            "line": 413,
                            "column": 118
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 15950,
                          "end": 15988,
                          "loc": {
                            "start": {
                              "line": 413,
                              "column": 8
                            },
                            "end": {
                              "line": 413,
                              "column": 46
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 15950,
                            "end": 15984,
                            "loc": {
                              "start": {
                                "line": 413,
                                "column": 8
                              },
                              "end": {
                                "line": 413,
                                "column": 42
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 15950,
                              "end": 15975,
                              "loc": {
                                "start": {
                                  "line": 413,
                                  "column": 8
                                },
                                "end": {
                                  "line": 413,
                                  "column": 33
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 15950,
                                "end": 15954,
                                "loc": {
                                  "start": {
                                    "line": 413,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 413,
                                    "column": 12
                                  }
                                },
                                "name": "view"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 15955,
                                "end": 15975,
                                "loc": {
                                  "start": {
                                    "line": 413,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 413,
                                    "column": 33
                                  }
                                },
                                "name": "__orthographicCamera"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 15976,
                              "end": 15984,
                              "loc": {
                                "start": {
                                  "line": 413,
                                  "column": 34
                                },
                                "end": {
                                  "line": 413,
                                  "column": 42
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15985,
                            "end": 15988,
                            "loc": {
                              "start": {
                                "line": 413,
                                "column": 43
                              },
                              "end": {
                                "line": 413,
                                "column": 46
                              }
                            },
                            "name": "set"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 15989,
                            "end": 16011,
                            "loc": {
                              "start": {
                                "line": 413,
                                "column": 47
                              },
                              "end": {
                                "line": 413,
                                "column": 69
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 15989,
                              "end": 16009,
                              "loc": {
                                "start": {
                                  "line": 413,
                                  "column": 47
                                },
                                "end": {
                                  "line": 413,
                                  "column": 67
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 15989,
                                "end": 16000,
                                "loc": {
                                  "start": {
                                    "line": 413,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 413,
                                    "column": 58
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 15989,
                                  "end": 15993,
                                  "loc": {
                                    "start": {
                                      "line": 413,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 413,
                                      "column": 51
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15994,
                                  "end": 16000,
                                  "loc": {
                                    "start": {
                                      "line": 413,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 413,
                                      "column": 58
                                    }
                                  },
                                  "name": "camera"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16001,
                                "end": 16009,
                                "loc": {
                                  "start": {
                                    "line": 413,
                                    "column": 59
                                  },
                                  "end": {
                                    "line": 413,
                                    "column": 67
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16010,
                              "end": 16011,
                              "loc": {
                                "start": {
                                  "line": 413,
                                  "column": 68
                                },
                                "end": {
                                  "line": 413,
                                  "column": 69
                                }
                              },
                              "name": "x"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 16013,
                            "end": 16035,
                            "loc": {
                              "start": {
                                "line": 413,
                                "column": 71
                              },
                              "end": {
                                "line": 413,
                                "column": 93
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 16013,
                              "end": 16033,
                              "loc": {
                                "start": {
                                  "line": 413,
                                  "column": 71
                                },
                                "end": {
                                  "line": 413,
                                  "column": 91
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 16013,
                                "end": 16024,
                                "loc": {
                                  "start": {
                                    "line": 413,
                                    "column": 71
                                  },
                                  "end": {
                                    "line": 413,
                                    "column": 82
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 16013,
                                  "end": 16017,
                                  "loc": {
                                    "start": {
                                      "line": 413,
                                      "column": 71
                                    },
                                    "end": {
                                      "line": 413,
                                      "column": 75
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16018,
                                  "end": 16024,
                                  "loc": {
                                    "start": {
                                      "line": 413,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 413,
                                      "column": 82
                                    }
                                  },
                                  "name": "camera"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16025,
                                "end": 16033,
                                "loc": {
                                  "start": {
                                    "line": 413,
                                    "column": 83
                                  },
                                  "end": {
                                    "line": 413,
                                    "column": 91
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16034,
                              "end": 16035,
                              "loc": {
                                "start": {
                                  "line": 413,
                                  "column": 92
                                },
                                "end": {
                                  "line": 413,
                                  "column": 93
                                }
                              },
                              "name": "y"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 16037,
                            "end": 16059,
                            "loc": {
                              "start": {
                                "line": 413,
                                "column": 95
                              },
                              "end": {
                                "line": 413,
                                "column": 117
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 16037,
                              "end": 16057,
                              "loc": {
                                "start": {
                                  "line": 413,
                                  "column": 95
                                },
                                "end": {
                                  "line": 413,
                                  "column": 115
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 16037,
                                "end": 16048,
                                "loc": {
                                  "start": {
                                    "line": 413,
                                    "column": 95
                                  },
                                  "end": {
                                    "line": 413,
                                    "column": 106
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 16037,
                                  "end": 16041,
                                  "loc": {
                                    "start": {
                                      "line": 413,
                                      "column": 95
                                    },
                                    "end": {
                                      "line": 413,
                                      "column": 99
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16042,
                                  "end": 16048,
                                  "loc": {
                                    "start": {
                                      "line": 413,
                                      "column": 100
                                    },
                                    "end": {
                                      "line": 413,
                                      "column": 106
                                    }
                                  },
                                  "name": "camera"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16049,
                                "end": 16057,
                                "loc": {
                                  "start": {
                                    "line": 413,
                                    "column": 107
                                  },
                                  "end": {
                                    "line": 413,
                                    "column": 115
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16058,
                              "end": 16059,
                              "loc": {
                                "start": {
                                  "line": 413,
                                  "column": 116
                                },
                                "end": {
                                  "line": 413,
                                  "column": 117
                                }
                              },
                              "name": "z"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 16070,
                      "end": 16215,
                      "loc": {
                        "start": {
                          "line": 414,
                          "column": 8
                        },
                        "end": {
                          "line": 414,
                          "column": 153
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 16070,
                        "end": 16214,
                        "loc": {
                          "start": {
                            "line": 414,
                            "column": 8
                          },
                          "end": {
                            "line": 414,
                            "column": 152
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 16070,
                          "end": 16110,
                          "loc": {
                            "start": {
                              "line": 414,
                              "column": 8
                            },
                            "end": {
                              "line": 414,
                              "column": 48
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 16070,
                            "end": 16106,
                            "loc": {
                              "start": {
                                "line": 414,
                                "column": 8
                              },
                              "end": {
                                "line": 414,
                                "column": 44
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 16070,
                              "end": 16095,
                              "loc": {
                                "start": {
                                  "line": 414,
                                  "column": 8
                                },
                                "end": {
                                  "line": 414,
                                  "column": 33
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 16070,
                                "end": 16074,
                                "loc": {
                                  "start": {
                                    "line": 414,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 414,
                                    "column": 12
                                  }
                                },
                                "name": "view"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16075,
                                "end": 16095,
                                "loc": {
                                  "start": {
                                    "line": 414,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 414,
                                    "column": 33
                                  }
                                },
                                "name": "__orthographicCamera"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16096,
                              "end": 16106,
                              "loc": {
                                "start": {
                                  "line": 414,
                                  "column": 34
                                },
                                "end": {
                                  "line": 414,
                                  "column": 44
                                }
                              },
                              "name": "quaternion"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 16107,
                            "end": 16110,
                            "loc": {
                              "start": {
                                "line": 414,
                                "column": 45
                              },
                              "end": {
                                "line": 414,
                                "column": 48
                              }
                            },
                            "name": "set"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 16111,
                            "end": 16135,
                            "loc": {
                              "start": {
                                "line": 414,
                                "column": 49
                              },
                              "end": {
                                "line": 414,
                                "column": 73
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 16111,
                              "end": 16133,
                              "loc": {
                                "start": {
                                  "line": 414,
                                  "column": 49
                                },
                                "end": {
                                  "line": 414,
                                  "column": 71
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 16111,
                                "end": 16122,
                                "loc": {
                                  "start": {
                                    "line": 414,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 414,
                                    "column": 60
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 16111,
                                  "end": 16115,
                                  "loc": {
                                    "start": {
                                      "line": 414,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 414,
                                      "column": 53
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16116,
                                  "end": 16122,
                                  "loc": {
                                    "start": {
                                      "line": 414,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 414,
                                      "column": 60
                                    }
                                  },
                                  "name": "camera"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16123,
                                "end": 16133,
                                "loc": {
                                  "start": {
                                    "line": 414,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 414,
                                    "column": 71
                                  }
                                },
                                "name": "quaternion"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16134,
                              "end": 16135,
                              "loc": {
                                "start": {
                                  "line": 414,
                                  "column": 72
                                },
                                "end": {
                                  "line": 414,
                                  "column": 73
                                }
                              },
                              "name": "x"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 16137,
                            "end": 16161,
                            "loc": {
                              "start": {
                                "line": 414,
                                "column": 75
                              },
                              "end": {
                                "line": 414,
                                "column": 99
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 16137,
                              "end": 16159,
                              "loc": {
                                "start": {
                                  "line": 414,
                                  "column": 75
                                },
                                "end": {
                                  "line": 414,
                                  "column": 97
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 16137,
                                "end": 16148,
                                "loc": {
                                  "start": {
                                    "line": 414,
                                    "column": 75
                                  },
                                  "end": {
                                    "line": 414,
                                    "column": 86
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 16137,
                                  "end": 16141,
                                  "loc": {
                                    "start": {
                                      "line": 414,
                                      "column": 75
                                    },
                                    "end": {
                                      "line": 414,
                                      "column": 79
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16142,
                                  "end": 16148,
                                  "loc": {
                                    "start": {
                                      "line": 414,
                                      "column": 80
                                    },
                                    "end": {
                                      "line": 414,
                                      "column": 86
                                    }
                                  },
                                  "name": "camera"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16149,
                                "end": 16159,
                                "loc": {
                                  "start": {
                                    "line": 414,
                                    "column": 87
                                  },
                                  "end": {
                                    "line": 414,
                                    "column": 97
                                  }
                                },
                                "name": "quaternion"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16160,
                              "end": 16161,
                              "loc": {
                                "start": {
                                  "line": 414,
                                  "column": 98
                                },
                                "end": {
                                  "line": 414,
                                  "column": 99
                                }
                              },
                              "name": "y"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 16163,
                            "end": 16187,
                            "loc": {
                              "start": {
                                "line": 414,
                                "column": 101
                              },
                              "end": {
                                "line": 414,
                                "column": 125
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 16163,
                              "end": 16185,
                              "loc": {
                                "start": {
                                  "line": 414,
                                  "column": 101
                                },
                                "end": {
                                  "line": 414,
                                  "column": 123
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 16163,
                                "end": 16174,
                                "loc": {
                                  "start": {
                                    "line": 414,
                                    "column": 101
                                  },
                                  "end": {
                                    "line": 414,
                                    "column": 112
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 16163,
                                  "end": 16167,
                                  "loc": {
                                    "start": {
                                      "line": 414,
                                      "column": 101
                                    },
                                    "end": {
                                      "line": 414,
                                      "column": 105
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16168,
                                  "end": 16174,
                                  "loc": {
                                    "start": {
                                      "line": 414,
                                      "column": 106
                                    },
                                    "end": {
                                      "line": 414,
                                      "column": 112
                                    }
                                  },
                                  "name": "camera"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16175,
                                "end": 16185,
                                "loc": {
                                  "start": {
                                    "line": 414,
                                    "column": 113
                                  },
                                  "end": {
                                    "line": 414,
                                    "column": 123
                                  }
                                },
                                "name": "quaternion"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16186,
                              "end": 16187,
                              "loc": {
                                "start": {
                                  "line": 414,
                                  "column": 124
                                },
                                "end": {
                                  "line": 414,
                                  "column": 125
                                }
                              },
                              "name": "z"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 16189,
                            "end": 16213,
                            "loc": {
                              "start": {
                                "line": 414,
                                "column": 127
                              },
                              "end": {
                                "line": 414,
                                "column": 151
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 16189,
                              "end": 16211,
                              "loc": {
                                "start": {
                                  "line": 414,
                                  "column": 127
                                },
                                "end": {
                                  "line": 414,
                                  "column": 149
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 16189,
                                "end": 16200,
                                "loc": {
                                  "start": {
                                    "line": 414,
                                    "column": 127
                                  },
                                  "end": {
                                    "line": 414,
                                    "column": 138
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 16189,
                                  "end": 16193,
                                  "loc": {
                                    "start": {
                                      "line": 414,
                                      "column": 127
                                    },
                                    "end": {
                                      "line": 414,
                                      "column": 131
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16194,
                                  "end": 16200,
                                  "loc": {
                                    "start": {
                                      "line": 414,
                                      "column": 132
                                    },
                                    "end": {
                                      "line": 414,
                                      "column": 138
                                    }
                                  },
                                  "name": "camera"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16201,
                                "end": 16211,
                                "loc": {
                                  "start": {
                                    "line": 414,
                                    "column": 139
                                  },
                                  "end": {
                                    "line": 414,
                                    "column": 149
                                  }
                                },
                                "name": "quaternion"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16212,
                              "end": 16213,
                              "loc": {
                                "start": {
                                  "line": 414,
                                  "column": 150
                                },
                                "end": {
                                  "line": 414,
                                  "column": 151
                                }
                              },
                              "name": "w"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 16224,
                      "end": 16363,
                      "loc": {
                        "start": {
                          "line": 415,
                          "column": 8
                        },
                        "end": {
                          "line": 415,
                          "column": 147
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 16224,
                        "end": 16362,
                        "loc": {
                          "start": {
                            "line": 415,
                            "column": 8
                          },
                          "end": {
                            "line": 415,
                            "column": 146
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 16224,
                          "end": 16262,
                          "loc": {
                            "start": {
                              "line": 415,
                              "column": 8
                            },
                            "end": {
                              "line": 415,
                              "column": 46
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 16224,
                            "end": 16258,
                            "loc": {
                              "start": {
                                "line": 415,
                                "column": 8
                              },
                              "end": {
                                "line": 415,
                                "column": 42
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 16224,
                              "end": 16249,
                              "loc": {
                                "start": {
                                  "line": 415,
                                  "column": 8
                                },
                                "end": {
                                  "line": 415,
                                  "column": 33
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 16224,
                                "end": 16228,
                                "loc": {
                                  "start": {
                                    "line": 415,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 415,
                                    "column": 12
                                  }
                                },
                                "name": "view"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16229,
                                "end": 16249,
                                "loc": {
                                  "start": {
                                    "line": 415,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 415,
                                    "column": 33
                                  }
                                },
                                "name": "__orthographicCamera"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16250,
                              "end": 16258,
                              "loc": {
                                "start": {
                                  "line": 415,
                                  "column": 34
                                },
                                "end": {
                                  "line": 415,
                                  "column": 42
                                }
                              },
                              "name": "rotation"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 16259,
                            "end": 16262,
                            "loc": {
                              "start": {
                                "line": 415,
                                "column": 43
                              },
                              "end": {
                                "line": 415,
                                "column": 46
                              }
                            },
                            "name": "set"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 16263,
                            "end": 16285,
                            "loc": {
                              "start": {
                                "line": 415,
                                "column": 47
                              },
                              "end": {
                                "line": 415,
                                "column": 69
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 16263,
                              "end": 16283,
                              "loc": {
                                "start": {
                                  "line": 415,
                                  "column": 47
                                },
                                "end": {
                                  "line": 415,
                                  "column": 67
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 16263,
                                "end": 16274,
                                "loc": {
                                  "start": {
                                    "line": 415,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 415,
                                    "column": 58
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 16263,
                                  "end": 16267,
                                  "loc": {
                                    "start": {
                                      "line": 415,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 415,
                                      "column": 51
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16268,
                                  "end": 16274,
                                  "loc": {
                                    "start": {
                                      "line": 415,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 415,
                                      "column": 58
                                    }
                                  },
                                  "name": "camera"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16275,
                                "end": 16283,
                                "loc": {
                                  "start": {
                                    "line": 415,
                                    "column": 59
                                  },
                                  "end": {
                                    "line": 415,
                                    "column": 67
                                  }
                                },
                                "name": "rotation"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16284,
                              "end": 16285,
                              "loc": {
                                "start": {
                                  "line": 415,
                                  "column": 68
                                },
                                "end": {
                                  "line": 415,
                                  "column": 69
                                }
                              },
                              "name": "x"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 16287,
                            "end": 16309,
                            "loc": {
                              "start": {
                                "line": 415,
                                "column": 71
                              },
                              "end": {
                                "line": 415,
                                "column": 93
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 16287,
                              "end": 16307,
                              "loc": {
                                "start": {
                                  "line": 415,
                                  "column": 71
                                },
                                "end": {
                                  "line": 415,
                                  "column": 91
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 16287,
                                "end": 16298,
                                "loc": {
                                  "start": {
                                    "line": 415,
                                    "column": 71
                                  },
                                  "end": {
                                    "line": 415,
                                    "column": 82
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 16287,
                                  "end": 16291,
                                  "loc": {
                                    "start": {
                                      "line": 415,
                                      "column": 71
                                    },
                                    "end": {
                                      "line": 415,
                                      "column": 75
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16292,
                                  "end": 16298,
                                  "loc": {
                                    "start": {
                                      "line": 415,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 415,
                                      "column": 82
                                    }
                                  },
                                  "name": "camera"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16299,
                                "end": 16307,
                                "loc": {
                                  "start": {
                                    "line": 415,
                                    "column": 83
                                  },
                                  "end": {
                                    "line": 415,
                                    "column": 91
                                  }
                                },
                                "name": "rotation"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16308,
                              "end": 16309,
                              "loc": {
                                "start": {
                                  "line": 415,
                                  "column": 92
                                },
                                "end": {
                                  "line": 415,
                                  "column": 93
                                }
                              },
                              "name": "y"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 16311,
                            "end": 16333,
                            "loc": {
                              "start": {
                                "line": 415,
                                "column": 95
                              },
                              "end": {
                                "line": 415,
                                "column": 117
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 16311,
                              "end": 16331,
                              "loc": {
                                "start": {
                                  "line": 415,
                                  "column": 95
                                },
                                "end": {
                                  "line": 415,
                                  "column": 115
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 16311,
                                "end": 16322,
                                "loc": {
                                  "start": {
                                    "line": 415,
                                    "column": 95
                                  },
                                  "end": {
                                    "line": 415,
                                    "column": 106
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 16311,
                                  "end": 16315,
                                  "loc": {
                                    "start": {
                                      "line": 415,
                                      "column": 95
                                    },
                                    "end": {
                                      "line": 415,
                                      "column": 99
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16316,
                                  "end": 16322,
                                  "loc": {
                                    "start": {
                                      "line": 415,
                                      "column": 100
                                    },
                                    "end": {
                                      "line": 415,
                                      "column": 106
                                    }
                                  },
                                  "name": "camera"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16323,
                                "end": 16331,
                                "loc": {
                                  "start": {
                                    "line": 415,
                                    "column": 107
                                  },
                                  "end": {
                                    "line": 415,
                                    "column": 115
                                  }
                                },
                                "name": "rotation"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16332,
                              "end": 16333,
                              "loc": {
                                "start": {
                                  "line": 415,
                                  "column": 116
                                },
                                "end": {
                                  "line": 415,
                                  "column": 117
                                }
                              },
                              "name": "z"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 16335,
                            "end": 16361,
                            "loc": {
                              "start": {
                                "line": 415,
                                "column": 119
                              },
                              "end": {
                                "line": 415,
                                "column": 145
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 16335,
                              "end": 16355,
                              "loc": {
                                "start": {
                                  "line": 415,
                                  "column": 119
                                },
                                "end": {
                                  "line": 415,
                                  "column": 139
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 16335,
                                "end": 16346,
                                "loc": {
                                  "start": {
                                    "line": 415,
                                    "column": 119
                                  },
                                  "end": {
                                    "line": 415,
                                    "column": 130
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 16335,
                                  "end": 16339,
                                  "loc": {
                                    "start": {
                                      "line": 415,
                                      "column": 119
                                    },
                                    "end": {
                                      "line": 415,
                                      "column": 123
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16340,
                                  "end": 16346,
                                  "loc": {
                                    "start": {
                                      "line": 415,
                                      "column": 124
                                    },
                                    "end": {
                                      "line": 415,
                                      "column": 130
                                    }
                                  },
                                  "name": "camera"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16347,
                                "end": 16355,
                                "loc": {
                                  "start": {
                                    "line": 415,
                                    "column": 131
                                  },
                                  "end": {
                                    "line": 415,
                                    "column": 139
                                  }
                                },
                                "name": "rotation"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16356,
                              "end": 16361,
                              "loc": {
                                "start": {
                                  "line": 415,
                                  "column": 140
                                },
                                "end": {
                                  "line": 415,
                                  "column": 145
                                }
                              },
                              "name": "order"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 16372,
                      "end": 16423,
                      "loc": {
                        "start": {
                          "line": 416,
                          "column": 8
                        },
                        "end": {
                          "line": 416,
                          "column": 59
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 16372,
                        "end": 16422,
                        "loc": {
                          "start": {
                            "line": 416,
                            "column": 8
                          },
                          "end": {
                            "line": 416,
                            "column": 58
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 16372,
                          "end": 16420,
                          "loc": {
                            "start": {
                              "line": 416,
                              "column": 8
                            },
                            "end": {
                              "line": 416,
                              "column": 56
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 16372,
                            "end": 16397,
                            "loc": {
                              "start": {
                                "line": 416,
                                "column": 8
                              },
                              "end": {
                                "line": 416,
                                "column": 33
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 16372,
                              "end": 16376,
                              "loc": {
                                "start": {
                                  "line": 416,
                                  "column": 8
                                },
                                "end": {
                                  "line": 416,
                                  "column": 12
                                }
                              },
                              "name": "view"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16377,
                              "end": 16397,
                              "loc": {
                                "start": {
                                  "line": 416,
                                  "column": 13
                                },
                                "end": {
                                  "line": 416,
                                  "column": 33
                                }
                              },
                              "name": "__orthographicCamera"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 16398,
                            "end": 16420,
                            "loc": {
                              "start": {
                                "line": 416,
                                "column": 34
                              },
                              "end": {
                                "line": 416,
                                "column": 56
                              }
                            },
                            "name": "updateProjectionMatrix"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 16433,
                      "end": 16473,
                      "loc": {
                        "start": {
                          "line": 418,
                          "column": 8
                        },
                        "end": {
                          "line": 418,
                          "column": 48
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 16433,
                        "end": 16472,
                        "loc": {
                          "start": {
                            "line": 418,
                            "column": 8
                          },
                          "end": {
                            "line": 418,
                            "column": 47
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 16433,
                          "end": 16444,
                          "loc": {
                            "start": {
                              "line": 418,
                              "column": 8
                            },
                            "end": {
                              "line": 418,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 16433,
                            "end": 16437,
                            "loc": {
                              "start": {
                                "line": 418,
                                "column": 8
                              },
                              "end": {
                                "line": 418,
                                "column": 12
                              }
                            },
                            "name": "view"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 16438,
                            "end": 16444,
                            "loc": {
                              "start": {
                                "line": 418,
                                "column": 13
                              },
                              "end": {
                                "line": 418,
                                "column": 19
                              }
                            },
                            "name": "camera"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 16447,
                          "end": 16472,
                          "loc": {
                            "start": {
                              "line": 418,
                              "column": 22
                            },
                            "end": {
                              "line": 418,
                              "column": 47
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 16447,
                            "end": 16451,
                            "loc": {
                              "start": {
                                "line": 418,
                                "column": 22
                              },
                              "end": {
                                "line": 418,
                                "column": 26
                              }
                            },
                            "name": "view"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 16452,
                            "end": 16472,
                            "loc": {
                              "start": {
                                "line": 418,
                                "column": 27
                              },
                              "end": {
                                "line": 418,
                                "column": 47
                              }
                            },
                            "name": "__orthographicCamera"
                          },
                          "computed": false
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "advised by Paul: necessary to ensure that new camera is used everywhere",
                          "start": 16482,
                          "end": 16555,
                          "loc": {
                            "start": {
                              "line": 419,
                              "column": 8
                            },
                            "end": {
                              "line": 419,
                              "column": 81
                            }
                          },
                          "range": [
                            16482,
                            16555
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 16564,
                      "end": 16621,
                      "loc": {
                        "start": {
                          "line": 420,
                          "column": 8
                        },
                        "end": {
                          "line": 420,
                          "column": 65
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 16564,
                        "end": 16620,
                        "loc": {
                          "start": {
                            "line": 420,
                            "column": 8
                          },
                          "end": {
                            "line": 420,
                            "column": 64
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 16564,
                          "end": 16577,
                          "loc": {
                            "start": {
                              "line": 420,
                              "column": 8
                            },
                            "end": {
                              "line": 420,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 16564,
                            "end": 16568,
                            "loc": {
                              "start": {
                                "line": 420,
                                "column": 8
                              },
                              "end": {
                                "line": 420,
                                "column": 12
                              }
                            },
                            "name": "view",
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 16569,
                            "end": 16577,
                            "loc": {
                              "start": {
                                "line": 420,
                                "column": 13
                              },
                              "end": {
                                "line": 420,
                                "column": 21
                              }
                            },
                            "name": "controls"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 16580,
                          "end": 16620,
                          "loc": {
                            "start": {
                              "line": 420,
                              "column": 24
                            },
                            "end": {
                              "line": 420,
                              "column": 64
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 16584,
                            "end": 16589,
                            "loc": {
                              "start": {
                                "line": 420,
                                "column": 28
                              },
                              "end": {
                                "line": 420,
                                "column": 33
                              }
                            },
                            "name": "Orbit"
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 16590,
                              "end": 16594,
                              "loc": {
                                "start": {
                                  "line": 420,
                                  "column": 34
                                },
                                "end": {
                                  "line": 420,
                                  "column": 38
                                }
                              },
                              "name": "view"
                            },
                            {
                              "type": "ObjectExpression",
                              "start": 16596,
                              "end": 16619,
                              "loc": {
                                "start": {
                                  "line": 420,
                                  "column": 40
                                },
                                "end": {
                                  "line": 420,
                                  "column": 63
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 16598,
                                  "end": 16617,
                                  "loc": {
                                    "start": {
                                      "line": 420,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 420,
                                      "column": 61
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 16598,
                                    "end": 16604,
                                    "loc": {
                                      "start": {
                                        "line": 420,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 420,
                                        "column": 48
                                      }
                                    },
                                    "name": "camera"
                                  },
                                  "value": {
                                    "type": "MemberExpression",
                                    "start": 16606,
                                    "end": 16617,
                                    "loc": {
                                      "start": {
                                        "line": 420,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 420,
                                        "column": 61
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 16606,
                                      "end": 16610,
                                      "loc": {
                                        "start": {
                                          "line": 420,
                                          "column": 50
                                        },
                                        "end": {
                                          "line": 420,
                                          "column": 54
                                        }
                                      },
                                      "name": "view"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 16611,
                                      "end": 16617,
                                      "loc": {
                                        "start": {
                                          "line": 420,
                                          "column": 55
                                        },
                                        "end": {
                                          "line": 420,
                                          "column": 61
                                        }
                                      },
                                      "name": "camera"
                                    },
                                    "computed": false
                                  },
                                  "kind": "init"
                                }
                              ]
                            }
                          ]
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "advised by Paul: necessary to ensure that new camera is used everywhere",
                          "start": 16482,
                          "end": 16555,
                          "loc": {
                            "start": {
                              "line": 419,
                              "column": 8
                            },
                            "end": {
                              "line": 419,
                              "column": 81
                            }
                          },
                          "range": [
                            16482,
                            16555
                          ]
                        }
                      ]
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " orthographic camera for sketch mode",
                  "start": 14829,
                  "end": 14867,
                  "loc": {
                    "start": {
                      "line": 389,
                      "column": 4
                    },
                    "end": {
                      "line": 389,
                      "column": 42
                    }
                  },
                  "range": [
                    14829,
                    14867
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 16633,
              "end": 17334,
              "loc": {
                "start": {
                  "line": 423,
                  "column": 4
                },
                "end": {
                  "line": 434,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 16633,
                "end": 16658,
                "loc": {
                  "start": {
                    "line": 423,
                    "column": 4
                  },
                  "end": {
                    "line": 423,
                    "column": 29
                  }
                },
                "name": "switchToPerspectiveCamera"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 16658,
                "end": 17334,
                "loc": {
                  "start": {
                    "line": 423,
                    "column": 29
                  },
                  "end": {
                    "line": 434,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 16659,
                    "end": 16663,
                    "loc": {
                      "start": {
                        "line": 423,
                        "column": 30
                      },
                      "end": {
                        "line": 423,
                        "column": 34
                      }
                    },
                    "name": "view"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 16665,
                  "end": 17334,
                  "loc": {
                    "start": {
                      "line": 423,
                      "column": 36
                    },
                    "end": {
                      "line": 434,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 16675,
                      "end": 16785,
                      "loc": {
                        "start": {
                          "line": 424,
                          "column": 8
                        },
                        "end": {
                          "line": 424,
                          "column": 118
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 16675,
                        "end": 16784,
                        "loc": {
                          "start": {
                            "line": 424,
                            "column": 8
                          },
                          "end": {
                            "line": 424,
                            "column": 117
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 16675,
                          "end": 16712,
                          "loc": {
                            "start": {
                              "line": 424,
                              "column": 8
                            },
                            "end": {
                              "line": 424,
                              "column": 45
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 16675,
                            "end": 16708,
                            "loc": {
                              "start": {
                                "line": 424,
                                "column": 8
                              },
                              "end": {
                                "line": 424,
                                "column": 41
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 16675,
                              "end": 16699,
                              "loc": {
                                "start": {
                                  "line": 424,
                                  "column": 8
                                },
                                "end": {
                                  "line": 424,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 16675,
                                "end": 16679,
                                "loc": {
                                  "start": {
                                    "line": 424,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 424,
                                    "column": 12
                                  }
                                },
                                "name": "view"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16680,
                                "end": 16699,
                                "loc": {
                                  "start": {
                                    "line": 424,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 424,
                                    "column": 32
                                  }
                                },
                                "name": "__perspectiveCamera"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16700,
                              "end": 16708,
                              "loc": {
                                "start": {
                                  "line": 424,
                                  "column": 33
                                },
                                "end": {
                                  "line": 424,
                                  "column": 41
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 16709,
                            "end": 16712,
                            "loc": {
                              "start": {
                                "line": 424,
                                "column": 42
                              },
                              "end": {
                                "line": 424,
                                "column": 45
                              }
                            },
                            "name": "set"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 16713,
                            "end": 16735,
                            "loc": {
                              "start": {
                                "line": 424,
                                "column": 46
                              },
                              "end": {
                                "line": 424,
                                "column": 68
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 16713,
                              "end": 16733,
                              "loc": {
                                "start": {
                                  "line": 424,
                                  "column": 46
                                },
                                "end": {
                                  "line": 424,
                                  "column": 66
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 16713,
                                "end": 16724,
                                "loc": {
                                  "start": {
                                    "line": 424,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 424,
                                    "column": 57
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 16713,
                                  "end": 16717,
                                  "loc": {
                                    "start": {
                                      "line": 424,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 424,
                                      "column": 50
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16718,
                                  "end": 16724,
                                  "loc": {
                                    "start": {
                                      "line": 424,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 424,
                                      "column": 57
                                    }
                                  },
                                  "name": "camera"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16725,
                                "end": 16733,
                                "loc": {
                                  "start": {
                                    "line": 424,
                                    "column": 58
                                  },
                                  "end": {
                                    "line": 424,
                                    "column": 66
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16734,
                              "end": 16735,
                              "loc": {
                                "start": {
                                  "line": 424,
                                  "column": 67
                                },
                                "end": {
                                  "line": 424,
                                  "column": 68
                                }
                              },
                              "name": "x"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 16737,
                            "end": 16759,
                            "loc": {
                              "start": {
                                "line": 424,
                                "column": 70
                              },
                              "end": {
                                "line": 424,
                                "column": 92
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 16737,
                              "end": 16757,
                              "loc": {
                                "start": {
                                  "line": 424,
                                  "column": 70
                                },
                                "end": {
                                  "line": 424,
                                  "column": 90
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 16737,
                                "end": 16748,
                                "loc": {
                                  "start": {
                                    "line": 424,
                                    "column": 70
                                  },
                                  "end": {
                                    "line": 424,
                                    "column": 81
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 16737,
                                  "end": 16741,
                                  "loc": {
                                    "start": {
                                      "line": 424,
                                      "column": 70
                                    },
                                    "end": {
                                      "line": 424,
                                      "column": 74
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16742,
                                  "end": 16748,
                                  "loc": {
                                    "start": {
                                      "line": 424,
                                      "column": 75
                                    },
                                    "end": {
                                      "line": 424,
                                      "column": 81
                                    }
                                  },
                                  "name": "camera"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16749,
                                "end": 16757,
                                "loc": {
                                  "start": {
                                    "line": 424,
                                    "column": 82
                                  },
                                  "end": {
                                    "line": 424,
                                    "column": 90
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16758,
                              "end": 16759,
                              "loc": {
                                "start": {
                                  "line": 424,
                                  "column": 91
                                },
                                "end": {
                                  "line": 424,
                                  "column": 92
                                }
                              },
                              "name": "y"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 16761,
                            "end": 16783,
                            "loc": {
                              "start": {
                                "line": 424,
                                "column": 94
                              },
                              "end": {
                                "line": 424,
                                "column": 116
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 16761,
                              "end": 16781,
                              "loc": {
                                "start": {
                                  "line": 424,
                                  "column": 94
                                },
                                "end": {
                                  "line": 424,
                                  "column": 114
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 16761,
                                "end": 16772,
                                "loc": {
                                  "start": {
                                    "line": 424,
                                    "column": 94
                                  },
                                  "end": {
                                    "line": 424,
                                    "column": 105
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 16761,
                                  "end": 16765,
                                  "loc": {
                                    "start": {
                                      "line": 424,
                                      "column": 94
                                    },
                                    "end": {
                                      "line": 424,
                                      "column": 98
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16766,
                                  "end": 16772,
                                  "loc": {
                                    "start": {
                                      "line": 424,
                                      "column": 99
                                    },
                                    "end": {
                                      "line": 424,
                                      "column": 105
                                    }
                                  },
                                  "name": "camera"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16773,
                                "end": 16781,
                                "loc": {
                                  "start": {
                                    "line": 424,
                                    "column": 106
                                  },
                                  "end": {
                                    "line": 424,
                                    "column": 114
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16782,
                              "end": 16783,
                              "loc": {
                                "start": {
                                  "line": 424,
                                  "column": 115
                                },
                                "end": {
                                  "line": 424,
                                  "column": 116
                                }
                              },
                              "name": "z"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 16794,
                      "end": 16938,
                      "loc": {
                        "start": {
                          "line": 425,
                          "column": 8
                        },
                        "end": {
                          "line": 425,
                          "column": 152
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 16794,
                        "end": 16937,
                        "loc": {
                          "start": {
                            "line": 425,
                            "column": 8
                          },
                          "end": {
                            "line": 425,
                            "column": 151
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 16794,
                          "end": 16833,
                          "loc": {
                            "start": {
                              "line": 425,
                              "column": 8
                            },
                            "end": {
                              "line": 425,
                              "column": 47
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 16794,
                            "end": 16829,
                            "loc": {
                              "start": {
                                "line": 425,
                                "column": 8
                              },
                              "end": {
                                "line": 425,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 16794,
                              "end": 16818,
                              "loc": {
                                "start": {
                                  "line": 425,
                                  "column": 8
                                },
                                "end": {
                                  "line": 425,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 16794,
                                "end": 16798,
                                "loc": {
                                  "start": {
                                    "line": 425,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 425,
                                    "column": 12
                                  }
                                },
                                "name": "view"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16799,
                                "end": 16818,
                                "loc": {
                                  "start": {
                                    "line": 425,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 425,
                                    "column": 32
                                  }
                                },
                                "name": "__perspectiveCamera"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16819,
                              "end": 16829,
                              "loc": {
                                "start": {
                                  "line": 425,
                                  "column": 33
                                },
                                "end": {
                                  "line": 425,
                                  "column": 43
                                }
                              },
                              "name": "quaternion"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 16830,
                            "end": 16833,
                            "loc": {
                              "start": {
                                "line": 425,
                                "column": 44
                              },
                              "end": {
                                "line": 425,
                                "column": 47
                              }
                            },
                            "name": "set"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 16834,
                            "end": 16858,
                            "loc": {
                              "start": {
                                "line": 425,
                                "column": 48
                              },
                              "end": {
                                "line": 425,
                                "column": 72
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 16834,
                              "end": 16856,
                              "loc": {
                                "start": {
                                  "line": 425,
                                  "column": 48
                                },
                                "end": {
                                  "line": 425,
                                  "column": 70
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 16834,
                                "end": 16845,
                                "loc": {
                                  "start": {
                                    "line": 425,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 425,
                                    "column": 59
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 16834,
                                  "end": 16838,
                                  "loc": {
                                    "start": {
                                      "line": 425,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 425,
                                      "column": 52
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16839,
                                  "end": 16845,
                                  "loc": {
                                    "start": {
                                      "line": 425,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 425,
                                      "column": 59
                                    }
                                  },
                                  "name": "camera"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16846,
                                "end": 16856,
                                "loc": {
                                  "start": {
                                    "line": 425,
                                    "column": 60
                                  },
                                  "end": {
                                    "line": 425,
                                    "column": 70
                                  }
                                },
                                "name": "quaternion"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16857,
                              "end": 16858,
                              "loc": {
                                "start": {
                                  "line": 425,
                                  "column": 71
                                },
                                "end": {
                                  "line": 425,
                                  "column": 72
                                }
                              },
                              "name": "x"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 16860,
                            "end": 16884,
                            "loc": {
                              "start": {
                                "line": 425,
                                "column": 74
                              },
                              "end": {
                                "line": 425,
                                "column": 98
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 16860,
                              "end": 16882,
                              "loc": {
                                "start": {
                                  "line": 425,
                                  "column": 74
                                },
                                "end": {
                                  "line": 425,
                                  "column": 96
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 16860,
                                "end": 16871,
                                "loc": {
                                  "start": {
                                    "line": 425,
                                    "column": 74
                                  },
                                  "end": {
                                    "line": 425,
                                    "column": 85
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 16860,
                                  "end": 16864,
                                  "loc": {
                                    "start": {
                                      "line": 425,
                                      "column": 74
                                    },
                                    "end": {
                                      "line": 425,
                                      "column": 78
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16865,
                                  "end": 16871,
                                  "loc": {
                                    "start": {
                                      "line": 425,
                                      "column": 79
                                    },
                                    "end": {
                                      "line": 425,
                                      "column": 85
                                    }
                                  },
                                  "name": "camera"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16872,
                                "end": 16882,
                                "loc": {
                                  "start": {
                                    "line": 425,
                                    "column": 86
                                  },
                                  "end": {
                                    "line": 425,
                                    "column": 96
                                  }
                                },
                                "name": "quaternion"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16883,
                              "end": 16884,
                              "loc": {
                                "start": {
                                  "line": 425,
                                  "column": 97
                                },
                                "end": {
                                  "line": 425,
                                  "column": 98
                                }
                              },
                              "name": "y"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 16886,
                            "end": 16910,
                            "loc": {
                              "start": {
                                "line": 425,
                                "column": 100
                              },
                              "end": {
                                "line": 425,
                                "column": 124
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 16886,
                              "end": 16908,
                              "loc": {
                                "start": {
                                  "line": 425,
                                  "column": 100
                                },
                                "end": {
                                  "line": 425,
                                  "column": 122
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 16886,
                                "end": 16897,
                                "loc": {
                                  "start": {
                                    "line": 425,
                                    "column": 100
                                  },
                                  "end": {
                                    "line": 425,
                                    "column": 111
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 16886,
                                  "end": 16890,
                                  "loc": {
                                    "start": {
                                      "line": 425,
                                      "column": 100
                                    },
                                    "end": {
                                      "line": 425,
                                      "column": 104
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16891,
                                  "end": 16897,
                                  "loc": {
                                    "start": {
                                      "line": 425,
                                      "column": 105
                                    },
                                    "end": {
                                      "line": 425,
                                      "column": 111
                                    }
                                  },
                                  "name": "camera"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16898,
                                "end": 16908,
                                "loc": {
                                  "start": {
                                    "line": 425,
                                    "column": 112
                                  },
                                  "end": {
                                    "line": 425,
                                    "column": 122
                                  }
                                },
                                "name": "quaternion"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16909,
                              "end": 16910,
                              "loc": {
                                "start": {
                                  "line": 425,
                                  "column": 123
                                },
                                "end": {
                                  "line": 425,
                                  "column": 124
                                }
                              },
                              "name": "z"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 16912,
                            "end": 16936,
                            "loc": {
                              "start": {
                                "line": 425,
                                "column": 126
                              },
                              "end": {
                                "line": 425,
                                "column": 150
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 16912,
                              "end": 16934,
                              "loc": {
                                "start": {
                                  "line": 425,
                                  "column": 126
                                },
                                "end": {
                                  "line": 425,
                                  "column": 148
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 16912,
                                "end": 16923,
                                "loc": {
                                  "start": {
                                    "line": 425,
                                    "column": 126
                                  },
                                  "end": {
                                    "line": 425,
                                    "column": 137
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 16912,
                                  "end": 16916,
                                  "loc": {
                                    "start": {
                                      "line": 425,
                                      "column": 126
                                    },
                                    "end": {
                                      "line": 425,
                                      "column": 130
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16917,
                                  "end": 16923,
                                  "loc": {
                                    "start": {
                                      "line": 425,
                                      "column": 131
                                    },
                                    "end": {
                                      "line": 425,
                                      "column": 137
                                    }
                                  },
                                  "name": "camera"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16924,
                                "end": 16934,
                                "loc": {
                                  "start": {
                                    "line": 425,
                                    "column": 138
                                  },
                                  "end": {
                                    "line": 425,
                                    "column": 148
                                  }
                                },
                                "name": "quaternion"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16935,
                              "end": 16936,
                              "loc": {
                                "start": {
                                  "line": 425,
                                  "column": 149
                                },
                                "end": {
                                  "line": 425,
                                  "column": 150
                                }
                              },
                              "name": "w"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 16947,
                      "end": 17085,
                      "loc": {
                        "start": {
                          "line": 426,
                          "column": 8
                        },
                        "end": {
                          "line": 426,
                          "column": 146
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 16947,
                        "end": 17084,
                        "loc": {
                          "start": {
                            "line": 426,
                            "column": 8
                          },
                          "end": {
                            "line": 426,
                            "column": 145
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 16947,
                          "end": 16984,
                          "loc": {
                            "start": {
                              "line": 426,
                              "column": 8
                            },
                            "end": {
                              "line": 426,
                              "column": 45
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 16947,
                            "end": 16980,
                            "loc": {
                              "start": {
                                "line": 426,
                                "column": 8
                              },
                              "end": {
                                "line": 426,
                                "column": 41
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 16947,
                              "end": 16971,
                              "loc": {
                                "start": {
                                  "line": 426,
                                  "column": 8
                                },
                                "end": {
                                  "line": 426,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 16947,
                                "end": 16951,
                                "loc": {
                                  "start": {
                                    "line": 426,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 426,
                                    "column": 12
                                  }
                                },
                                "name": "view"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16952,
                                "end": 16971,
                                "loc": {
                                  "start": {
                                    "line": 426,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 426,
                                    "column": 32
                                  }
                                },
                                "name": "__perspectiveCamera"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16972,
                              "end": 16980,
                              "loc": {
                                "start": {
                                  "line": 426,
                                  "column": 33
                                },
                                "end": {
                                  "line": 426,
                                  "column": 41
                                }
                              },
                              "name": "rotation"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 16981,
                            "end": 16984,
                            "loc": {
                              "start": {
                                "line": 426,
                                "column": 42
                              },
                              "end": {
                                "line": 426,
                                "column": 45
                              }
                            },
                            "name": "set"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 16985,
                            "end": 17007,
                            "loc": {
                              "start": {
                                "line": 426,
                                "column": 46
                              },
                              "end": {
                                "line": 426,
                                "column": 68
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 16985,
                              "end": 17005,
                              "loc": {
                                "start": {
                                  "line": 426,
                                  "column": 46
                                },
                                "end": {
                                  "line": 426,
                                  "column": 66
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 16985,
                                "end": 16996,
                                "loc": {
                                  "start": {
                                    "line": 426,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 426,
                                    "column": 57
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 16985,
                                  "end": 16989,
                                  "loc": {
                                    "start": {
                                      "line": 426,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 426,
                                      "column": 50
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16990,
                                  "end": 16996,
                                  "loc": {
                                    "start": {
                                      "line": 426,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 426,
                                      "column": 57
                                    }
                                  },
                                  "name": "camera"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16997,
                                "end": 17005,
                                "loc": {
                                  "start": {
                                    "line": 426,
                                    "column": 58
                                  },
                                  "end": {
                                    "line": 426,
                                    "column": 66
                                  }
                                },
                                "name": "rotation"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17006,
                              "end": 17007,
                              "loc": {
                                "start": {
                                  "line": 426,
                                  "column": 67
                                },
                                "end": {
                                  "line": 426,
                                  "column": 68
                                }
                              },
                              "name": "x"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 17009,
                            "end": 17031,
                            "loc": {
                              "start": {
                                "line": 426,
                                "column": 70
                              },
                              "end": {
                                "line": 426,
                                "column": 92
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 17009,
                              "end": 17029,
                              "loc": {
                                "start": {
                                  "line": 426,
                                  "column": 70
                                },
                                "end": {
                                  "line": 426,
                                  "column": 90
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 17009,
                                "end": 17020,
                                "loc": {
                                  "start": {
                                    "line": 426,
                                    "column": 70
                                  },
                                  "end": {
                                    "line": 426,
                                    "column": 81
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 17009,
                                  "end": 17013,
                                  "loc": {
                                    "start": {
                                      "line": 426,
                                      "column": 70
                                    },
                                    "end": {
                                      "line": 426,
                                      "column": 74
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 17014,
                                  "end": 17020,
                                  "loc": {
                                    "start": {
                                      "line": 426,
                                      "column": 75
                                    },
                                    "end": {
                                      "line": 426,
                                      "column": 81
                                    }
                                  },
                                  "name": "camera"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 17021,
                                "end": 17029,
                                "loc": {
                                  "start": {
                                    "line": 426,
                                    "column": 82
                                  },
                                  "end": {
                                    "line": 426,
                                    "column": 90
                                  }
                                },
                                "name": "rotation"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17030,
                              "end": 17031,
                              "loc": {
                                "start": {
                                  "line": 426,
                                  "column": 91
                                },
                                "end": {
                                  "line": 426,
                                  "column": 92
                                }
                              },
                              "name": "y"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 17033,
                            "end": 17055,
                            "loc": {
                              "start": {
                                "line": 426,
                                "column": 94
                              },
                              "end": {
                                "line": 426,
                                "column": 116
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 17033,
                              "end": 17053,
                              "loc": {
                                "start": {
                                  "line": 426,
                                  "column": 94
                                },
                                "end": {
                                  "line": 426,
                                  "column": 114
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 17033,
                                "end": 17044,
                                "loc": {
                                  "start": {
                                    "line": 426,
                                    "column": 94
                                  },
                                  "end": {
                                    "line": 426,
                                    "column": 105
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 17033,
                                  "end": 17037,
                                  "loc": {
                                    "start": {
                                      "line": 426,
                                      "column": 94
                                    },
                                    "end": {
                                      "line": 426,
                                      "column": 98
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 17038,
                                  "end": 17044,
                                  "loc": {
                                    "start": {
                                      "line": 426,
                                      "column": 99
                                    },
                                    "end": {
                                      "line": 426,
                                      "column": 105
                                    }
                                  },
                                  "name": "camera"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 17045,
                                "end": 17053,
                                "loc": {
                                  "start": {
                                    "line": 426,
                                    "column": 106
                                  },
                                  "end": {
                                    "line": 426,
                                    "column": 114
                                  }
                                },
                                "name": "rotation"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17054,
                              "end": 17055,
                              "loc": {
                                "start": {
                                  "line": 426,
                                  "column": 115
                                },
                                "end": {
                                  "line": 426,
                                  "column": 116
                                }
                              },
                              "name": "z"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 17057,
                            "end": 17083,
                            "loc": {
                              "start": {
                                "line": 426,
                                "column": 118
                              },
                              "end": {
                                "line": 426,
                                "column": 144
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 17057,
                              "end": 17077,
                              "loc": {
                                "start": {
                                  "line": 426,
                                  "column": 118
                                },
                                "end": {
                                  "line": 426,
                                  "column": 138
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 17057,
                                "end": 17068,
                                "loc": {
                                  "start": {
                                    "line": 426,
                                    "column": 118
                                  },
                                  "end": {
                                    "line": 426,
                                    "column": 129
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 17057,
                                  "end": 17061,
                                  "loc": {
                                    "start": {
                                      "line": 426,
                                      "column": 118
                                    },
                                    "end": {
                                      "line": 426,
                                      "column": 122
                                    }
                                  },
                                  "name": "view"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 17062,
                                  "end": 17068,
                                  "loc": {
                                    "start": {
                                      "line": 426,
                                      "column": 123
                                    },
                                    "end": {
                                      "line": 426,
                                      "column": 129
                                    }
                                  },
                                  "name": "camera"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 17069,
                                "end": 17077,
                                "loc": {
                                  "start": {
                                    "line": 426,
                                    "column": 130
                                  },
                                  "end": {
                                    "line": 426,
                                    "column": 138
                                  }
                                },
                                "name": "rotation"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17078,
                              "end": 17083,
                              "loc": {
                                "start": {
                                  "line": 426,
                                  "column": 139
                                },
                                "end": {
                                  "line": 426,
                                  "column": 144
                                }
                              },
                              "name": "order"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 17095,
                      "end": 17145,
                      "loc": {
                        "start": {
                          "line": 428,
                          "column": 8
                        },
                        "end": {
                          "line": 428,
                          "column": 58
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 17095,
                        "end": 17144,
                        "loc": {
                          "start": {
                            "line": 428,
                            "column": 8
                          },
                          "end": {
                            "line": 428,
                            "column": 57
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 17095,
                          "end": 17142,
                          "loc": {
                            "start": {
                              "line": 428,
                              "column": 8
                            },
                            "end": {
                              "line": 428,
                              "column": 55
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 17095,
                            "end": 17119,
                            "loc": {
                              "start": {
                                "line": 428,
                                "column": 8
                              },
                              "end": {
                                "line": 428,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 17095,
                              "end": 17099,
                              "loc": {
                                "start": {
                                  "line": 428,
                                  "column": 8
                                },
                                "end": {
                                  "line": 428,
                                  "column": 12
                                }
                              },
                              "name": "view"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17100,
                              "end": 17119,
                              "loc": {
                                "start": {
                                  "line": 428,
                                  "column": 13
                                },
                                "end": {
                                  "line": 428,
                                  "column": 32
                                }
                              },
                              "name": "__perspectiveCamera"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17120,
                            "end": 17142,
                            "loc": {
                              "start": {
                                "line": 428,
                                "column": 33
                              },
                              "end": {
                                "line": 428,
                                "column": 55
                              }
                            },
                            "name": "updateProjectionMatrix"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 17155,
                      "end": 17176,
                      "loc": {
                        "start": {
                          "line": 430,
                          "column": 8
                        },
                        "end": {
                          "line": 430,
                          "column": 29
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 17155,
                        "end": 17175,
                        "loc": {
                          "start": {
                            "line": 430,
                            "column": 8
                          },
                          "end": {
                            "line": 430,
                            "column": 28
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 17155,
                          "end": 17168,
                          "loc": {
                            "start": {
                              "line": 430,
                              "column": 8
                            },
                            "end": {
                              "line": 430,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 17155,
                            "end": 17159,
                            "loc": {
                              "start": {
                                "line": 430,
                                "column": 8
                              },
                              "end": {
                                "line": 430,
                                "column": 12
                              }
                            },
                            "name": "view"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17160,
                            "end": 17168,
                            "loc": {
                              "start": {
                                "line": 430,
                                "column": 13
                              },
                              "end": {
                                "line": 430,
                                "column": 21
                              }
                            },
                            "name": "callback"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 17171,
                          "end": 17175,
                          "loc": {
                            "start": {
                              "line": 430,
                              "column": 24
                            },
                            "end": {
                              "line": 430,
                              "column": 28
                            }
                          },
                          "value": null,
                          "rawValue": null,
                          "raw": "null"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 17185,
                      "end": 17224,
                      "loc": {
                        "start": {
                          "line": 431,
                          "column": 8
                        },
                        "end": {
                          "line": 431,
                          "column": 47
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 17185,
                        "end": 17223,
                        "loc": {
                          "start": {
                            "line": 431,
                            "column": 8
                          },
                          "end": {
                            "line": 431,
                            "column": 46
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 17185,
                          "end": 17196,
                          "loc": {
                            "start": {
                              "line": 431,
                              "column": 8
                            },
                            "end": {
                              "line": 431,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 17185,
                            "end": 17189,
                            "loc": {
                              "start": {
                                "line": 431,
                                "column": 8
                              },
                              "end": {
                                "line": 431,
                                "column": 12
                              }
                            },
                            "name": "view"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17190,
                            "end": 17196,
                            "loc": {
                              "start": {
                                "line": 431,
                                "column": 13
                              },
                              "end": {
                                "line": 431,
                                "column": 19
                              }
                            },
                            "name": "camera"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 17199,
                          "end": 17223,
                          "loc": {
                            "start": {
                              "line": 431,
                              "column": 22
                            },
                            "end": {
                              "line": 431,
                              "column": 46
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 17199,
                            "end": 17203,
                            "loc": {
                              "start": {
                                "line": 431,
                                "column": 22
                              },
                              "end": {
                                "line": 431,
                                "column": 26
                              }
                            },
                            "name": "view"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17204,
                            "end": 17223,
                            "loc": {
                              "start": {
                                "line": 431,
                                "column": 27
                              },
                              "end": {
                                "line": 431,
                                "column": 46
                              }
                            },
                            "name": "__perspectiveCamera"
                          },
                          "computed": false
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "advised by Paul (see above)",
                          "start": 17233,
                          "end": 17262,
                          "loc": {
                            "start": {
                              "line": 432,
                              "column": 8
                            },
                            "end": {
                              "line": 432,
                              "column": 37
                            }
                          },
                          "range": [
                            17233,
                            17262
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 17271,
                      "end": 17328,
                      "loc": {
                        "start": {
                          "line": 433,
                          "column": 8
                        },
                        "end": {
                          "line": 433,
                          "column": 65
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 17271,
                        "end": 17327,
                        "loc": {
                          "start": {
                            "line": 433,
                            "column": 8
                          },
                          "end": {
                            "line": 433,
                            "column": 64
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 17271,
                          "end": 17284,
                          "loc": {
                            "start": {
                              "line": 433,
                              "column": 8
                            },
                            "end": {
                              "line": 433,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 17271,
                            "end": 17275,
                            "loc": {
                              "start": {
                                "line": 433,
                                "column": 8
                              },
                              "end": {
                                "line": 433,
                                "column": 12
                              }
                            },
                            "name": "view",
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17276,
                            "end": 17284,
                            "loc": {
                              "start": {
                                "line": 433,
                                "column": 13
                              },
                              "end": {
                                "line": 433,
                                "column": 21
                              }
                            },
                            "name": "controls"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 17287,
                          "end": 17327,
                          "loc": {
                            "start": {
                              "line": 433,
                              "column": 24
                            },
                            "end": {
                              "line": 433,
                              "column": 64
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 17291,
                            "end": 17296,
                            "loc": {
                              "start": {
                                "line": 433,
                                "column": 28
                              },
                              "end": {
                                "line": 433,
                                "column": 33
                              }
                            },
                            "name": "Orbit"
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 17297,
                              "end": 17301,
                              "loc": {
                                "start": {
                                  "line": 433,
                                  "column": 34
                                },
                                "end": {
                                  "line": 433,
                                  "column": 38
                                }
                              },
                              "name": "view"
                            },
                            {
                              "type": "ObjectExpression",
                              "start": 17303,
                              "end": 17326,
                              "loc": {
                                "start": {
                                  "line": 433,
                                  "column": 40
                                },
                                "end": {
                                  "line": 433,
                                  "column": 63
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 17305,
                                  "end": 17324,
                                  "loc": {
                                    "start": {
                                      "line": 433,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 433,
                                      "column": 61
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 17305,
                                    "end": 17311,
                                    "loc": {
                                      "start": {
                                        "line": 433,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 433,
                                        "column": 48
                                      }
                                    },
                                    "name": "camera"
                                  },
                                  "value": {
                                    "type": "MemberExpression",
                                    "start": 17313,
                                    "end": 17324,
                                    "loc": {
                                      "start": {
                                        "line": 433,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 433,
                                        "column": 61
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 17313,
                                      "end": 17317,
                                      "loc": {
                                        "start": {
                                          "line": 433,
                                          "column": 50
                                        },
                                        "end": {
                                          "line": 433,
                                          "column": 54
                                        }
                                      },
                                      "name": "view"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 17318,
                                      "end": 17324,
                                      "loc": {
                                        "start": {
                                          "line": 433,
                                          "column": 55
                                        },
                                        "end": {
                                          "line": 433,
                                          "column": 61
                                        }
                                      },
                                      "name": "camera"
                                    },
                                    "computed": false
                                  },
                                  "kind": "init"
                                }
                              ]
                            }
                          ]
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "advised by Paul (see above)",
                          "start": 17233,
                          "end": 17262,
                          "loc": {
                            "start": {
                              "line": 432,
                              "column": 8
                            },
                            "end": {
                              "line": 432,
                              "column": 37
                            }
                          },
                          "range": [
                            17233,
                            17262
                          ]
                        }
                      ]
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 17340,
              "end": 19341,
              "loc": {
                "start": {
                  "line": 436,
                  "column": 4
                },
                "end": {
                  "line": 489,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 17346,
                "end": 17358,
                "loc": {
                  "start": {
                    "line": 436,
                    "column": 10
                  },
                  "end": {
                    "line": 436,
                    "column": 22
                  }
                },
                "name": "selectSketch"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 17358,
                "end": 19341,
                "loc": {
                  "start": {
                    "line": 436,
                    "column": 22
                  },
                  "end": {
                    "line": 489,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 17359,
                    "end": 17365,
                    "loc": {
                      "start": {
                        "line": 436,
                        "column": 23
                      },
                      "end": {
                        "line": 436,
                        "column": 29
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 17367,
                  "end": 19341,
                  "loc": {
                    "start": {
                      "line": 436,
                      "column": 31
                    },
                    "end": {
                      "line": 489,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 17377,
                      "end": 17436,
                      "loc": {
                        "start": {
                          "line": 437,
                          "column": 8
                        },
                        "end": {
                          "line": 438,
                          "column": 24
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 17381,
                        "end": 17410,
                        "loc": {
                          "start": {
                            "line": 437,
                            "column": 12
                          },
                          "end": {
                            "line": 437,
                            "column": 41
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 17381,
                          "end": 17399,
                          "loc": {
                            "start": {
                              "line": 437,
                              "column": 12
                            },
                            "end": {
                              "line": 437,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 17381,
                            "end": 17385,
                            "loc": {
                              "start": {
                                "line": 437,
                                "column": 12
                              },
                              "end": {
                                "line": 437,
                                "column": 16
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17386,
                            "end": 17399,
                            "loc": {
                              "start": {
                                "line": 437,
                                "column": 17
                              },
                              "end": {
                                "line": 437,
                                "column": 30
                              }
                            },
                            "name": "currentSketch"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 17404,
                          "end": 17410,
                          "loc": {
                            "start": {
                              "line": 437,
                              "column": 35
                            },
                            "end": {
                              "line": 437,
                              "column": 41
                            }
                          },
                          "name": "sketch"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 17424,
                        "end": 17436,
                        "loc": {
                          "start": {
                            "line": 438,
                            "column": 12
                          },
                          "end": {
                            "line": 438,
                            "column": 24
                          }
                        },
                        "argument": {
                          "type": "Literal",
                          "start": 17431,
                          "end": 17435,
                          "loc": {
                            "start": {
                              "line": 438,
                              "column": 19
                            },
                            "end": {
                              "line": 438,
                              "column": 23
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 17445,
                      "end": 17504,
                      "loc": {
                        "start": {
                          "line": 439,
                          "column": 8
                        },
                        "end": {
                          "line": 440,
                          "column": 25
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 17449,
                        "end": 17477,
                        "loc": {
                          "start": {
                            "line": 439,
                            "column": 12
                          },
                          "end": {
                            "line": 439,
                            "column": 40
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "AwaitExpression",
                          "start": 17450,
                          "end": 17477,
                          "loc": {
                            "start": {
                              "line": 439,
                              "column": 13
                            },
                            "end": {
                              "line": 439,
                              "column": 40
                            }
                          },
                          "all": false,
                          "argument": {
                            "type": "CallExpression",
                            "start": 17456,
                            "end": 17477,
                            "loc": {
                              "start": {
                                "line": 439,
                                "column": 19
                              },
                              "end": {
                                "line": 439,
                                "column": 40
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 17456,
                              "end": 17475,
                              "loc": {
                                "start": {
                                  "line": 439,
                                  "column": 19
                                },
                                "end": {
                                  "line": 439,
                                  "column": 38
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 17456,
                                "end": 17460,
                                "loc": {
                                  "start": {
                                    "line": 439,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 439,
                                    "column": 23
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 17461,
                                "end": 17475,
                                "loc": {
                                  "start": {
                                    "line": 439,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 439,
                                    "column": 38
                                  }
                                },
                                "name": "deselectSketch"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 17491,
                        "end": 17504,
                        "loc": {
                          "start": {
                            "line": 440,
                            "column": 12
                          },
                          "end": {
                            "line": 440,
                            "column": 25
                          }
                        },
                        "argument": {
                          "type": "Literal",
                          "start": 17498,
                          "end": 17503,
                          "loc": {
                            "start": {
                              "line": 440,
                              "column": 19
                            },
                            "end": {
                              "line": 440,
                              "column": 24
                            }
                          },
                          "value": false,
                          "rawValue": false,
                          "raw": "false"
                        },
                        "trailingComments": null
                      },
                      "alternate": null,
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "cannot deselect other sketch",
                          "start": 17507,
                          "end": 17537,
                          "loc": {
                            "start": {
                              "line": 440,
                              "column": 28
                            },
                            "end": {
                              "line": 440,
                              "column": 58
                            }
                          },
                          "range": [
                            17507,
                            17537
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 17548,
                      "end": 17608,
                      "loc": {
                        "start": {
                          "line": 443,
                          "column": 8
                        },
                        "end": {
                          "line": 443,
                          "column": 68
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 17548,
                        "end": 17607,
                        "loc": {
                          "start": {
                            "line": 443,
                            "column": 8
                          },
                          "end": {
                            "line": 443,
                            "column": 67
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 17548,
                          "end": 17584,
                          "loc": {
                            "start": {
                              "line": 443,
                              "column": 8
                            },
                            "end": {
                              "line": 443,
                              "column": 44
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 17548,
                            "end": 17574,
                            "loc": {
                              "start": {
                                "line": 443,
                                "column": 8
                              },
                              "end": {
                                "line": 443,
                                "column": 34
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 17548,
                              "end": 17565,
                              "loc": {
                                "start": {
                                  "line": 443,
                                  "column": 8
                                },
                                "end": {
                                  "line": 443,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 17548,
                                "end": 17552,
                                "loc": {
                                  "start": {
                                    "line": 443,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 443,
                                    "column": 12
                                  }
                                },
                                "leadingComments": null
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 17553,
                                "end": 17565,
                                "loc": {
                                  "start": {
                                    "line": 443,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 443,
                                    "column": 25
                                  }
                                },
                                "name": "__parentView"
                              },
                              "computed": false,
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17566,
                              "end": 17574,
                              "loc": {
                                "start": {
                                  "line": 443,
                                  "column": 26
                                },
                                "end": {
                                  "line": 443,
                                  "column": 34
                                }
                              },
                              "name": "controls"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17575,
                            "end": 17584,
                            "loc": {
                              "start": {
                                "line": 443,
                                "column": 35
                              },
                              "end": {
                                "line": 443,
                                "column": 44
                              }
                            },
                            "name": "zoomState"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 17587,
                          "end": 17607,
                          "loc": {
                            "start": {
                              "line": 443,
                              "column": 47
                            },
                            "end": {
                              "line": 443,
                              "column": 67
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 17587,
                            "end": 17601,
                            "loc": {
                              "start": {
                                "line": 443,
                                "column": 47
                              },
                              "end": {
                                "line": 443,
                                "column": 61
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 17587,
                              "end": 17592,
                              "loc": {
                                "start": {
                                  "line": 443,
                                  "column": 47
                                },
                                "end": {
                                  "line": 443,
                                  "column": 52
                                }
                              },
                              "name": "Orbit"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17593,
                              "end": 17601,
                              "loc": {
                                "start": {
                                  "line": 443,
                                  "column": 53
                                },
                                "end": {
                                  "line": 443,
                                  "column": 61
                                }
                              },
                              "name": "ZoomMode"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17602,
                            "end": 17607,
                            "loc": {
                              "start": {
                                "line": 443,
                                "column": 62
                              },
                              "end": {
                                "line": 443,
                                "column": 67
                              }
                            },
                            "name": "Mouse"
                          },
                          "computed": false
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "cannot deselect other sketch",
                          "start": 17507,
                          "end": 17537,
                          "loc": {
                            "start": {
                              "line": 440,
                              "column": 28
                            },
                            "end": {
                              "line": 440,
                              "column": 58
                            }
                          },
                          "range": [
                            17507,
                            17537
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 17617,
                      "end": 17668,
                      "loc": {
                        "start": {
                          "line": 444,
                          "column": 8
                        },
                        "end": {
                          "line": 444,
                          "column": 59
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 17617,
                        "end": 17667,
                        "loc": {
                          "start": {
                            "line": 444,
                            "column": 8
                          },
                          "end": {
                            "line": 444,
                            "column": 58
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 17617,
                          "end": 17648,
                          "loc": {
                            "start": {
                              "line": 444,
                              "column": 8
                            },
                            "end": {
                              "line": 444,
                              "column": 39
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 17617,
                            "end": 17621,
                            "loc": {
                              "start": {
                                "line": 444,
                                "column": 8
                              },
                              "end": {
                                "line": 444,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17622,
                            "end": 17648,
                            "loc": {
                              "start": {
                                "line": 444,
                                "column": 13
                              },
                              "end": {
                                "line": 444,
                                "column": 39
                              }
                            },
                            "name": "switchToOrthographicCamera"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 17649,
                            "end": 17666,
                            "loc": {
                              "start": {
                                "line": 444,
                                "column": 40
                              },
                              "end": {
                                "line": 444,
                                "column": 57
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 17649,
                              "end": 17653,
                              "loc": {
                                "start": {
                                  "line": 444,
                                  "column": 40
                                },
                                "end": {
                                  "line": 444,
                                  "column": 44
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17654,
                              "end": 17666,
                              "loc": {
                                "start": {
                                  "line": 444,
                                  "column": 45
                                },
                                "end": {
                                  "line": 444,
                                  "column": 57
                                }
                              },
                              "name": "__parentView"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 17678,
                      "end": 17706,
                      "loc": {
                        "start": {
                          "line": 446,
                          "column": 8
                        },
                        "end": {
                          "line": 446,
                          "column": 36
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 17678,
                        "end": 17705,
                        "loc": {
                          "start": {
                            "line": 446,
                            "column": 8
                          },
                          "end": {
                            "line": 446,
                            "column": 35
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 17678,
                          "end": 17696,
                          "loc": {
                            "start": {
                              "line": 446,
                              "column": 8
                            },
                            "end": {
                              "line": 446,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 17678,
                            "end": 17682,
                            "loc": {
                              "start": {
                                "line": 446,
                                "column": 8
                              },
                              "end": {
                                "line": 446,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17683,
                            "end": 17696,
                            "loc": {
                              "start": {
                                "line": 446,
                                "column": 13
                              },
                              "end": {
                                "line": 446,
                                "column": 26
                              }
                            },
                            "name": "currentSketch"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 17699,
                          "end": 17705,
                          "loc": {
                            "start": {
                              "line": 446,
                              "column": 29
                            },
                            "end": {
                              "line": 446,
                              "column": 35
                            }
                          },
                          "name": "sketch"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 17715,
                      "end": 17754,
                      "loc": {
                        "start": {
                          "line": 447,
                          "column": 8
                        },
                        "end": {
                          "line": 447,
                          "column": 47
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 17715,
                        "end": 17753,
                        "loc": {
                          "start": {
                            "line": 447,
                            "column": 8
                          },
                          "end": {
                            "line": 447,
                            "column": 46
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 17715,
                          "end": 17746,
                          "loc": {
                            "start": {
                              "line": 447,
                              "column": 8
                            },
                            "end": {
                              "line": 447,
                              "column": 39
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 17715,
                            "end": 17729,
                            "loc": {
                              "start": {
                                "line": 447,
                                "column": 8
                              },
                              "end": {
                                "line": 447,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 17715,
                              "end": 17719,
                              "loc": {
                                "start": {
                                  "line": 447,
                                  "column": 8
                                },
                                "end": {
                                  "line": 447,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17720,
                              "end": 17729,
                              "loc": {
                                "start": {
                                  "line": 447,
                                  "column": 13
                                },
                                "end": {
                                  "line": 447,
                                  "column": 22
                                }
                              },
                              "name": "modelData"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17730,
                            "end": 17746,
                            "loc": {
                              "start": {
                                "line": 447,
                                "column": 23
                              },
                              "end": {
                                "line": 447,
                                "column": 39
                              }
                            },
                            "name": "isSketchSelected"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 17749,
                          "end": 17753,
                          "loc": {
                            "start": {
                              "line": 447,
                              "column": 42
                            },
                            "end": {
                              "line": 447,
                              "column": 46
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 17763,
                      "end": 17843,
                      "loc": {
                        "start": {
                          "line": 448,
                          "column": 8
                        },
                        "end": {
                          "line": 448,
                          "column": 88
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 17763,
                        "end": 17842,
                        "loc": {
                          "start": {
                            "line": 448,
                            "column": 8
                          },
                          "end": {
                            "line": 448,
                            "column": 87
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 17763,
                          "end": 17791,
                          "loc": {
                            "start": {
                              "line": 448,
                              "column": 8
                            },
                            "end": {
                              "line": 448,
                              "column": 36
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 17763,
                            "end": 17777,
                            "loc": {
                              "start": {
                                "line": 448,
                                "column": 8
                              },
                              "end": {
                                "line": 448,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 17763,
                              "end": 17767,
                              "loc": {
                                "start": {
                                  "line": 448,
                                  "column": 8
                                },
                                "end": {
                                  "line": 448,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17768,
                              "end": 17777,
                              "loc": {
                                "start": {
                                  "line": 448,
                                  "column": 13
                                },
                                "end": {
                                  "line": 448,
                                  "column": 22
                                }
                              },
                              "name": "modelData"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17778,
                            "end": 17791,
                            "loc": {
                              "start": {
                                "line": 448,
                                "column": 23
                              },
                              "end": {
                                "line": 448,
                                "column": 36
                              }
                            },
                            "name": "expressionSet"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 17794,
                          "end": 17842,
                          "loc": {
                            "start": {
                              "line": 448,
                              "column": 39
                            },
                            "end": {
                              "line": 448,
                              "column": 87
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 17794,
                            "end": 17832,
                            "loc": {
                              "start": {
                                "line": 448,
                                "column": 39
                              },
                              "end": {
                                "line": 448,
                                "column": 77
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 17794,
                              "end": 17818,
                              "loc": {
                                "start": {
                                  "line": 448,
                                  "column": 39
                                },
                                "end": {
                                  "line": 448,
                                  "column": 63
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 17794,
                                "end": 17810,
                                "loc": {
                                  "start": {
                                    "line": 448,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 448,
                                    "column": 55
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 17794,
                                  "end": 17808,
                                  "loc": {
                                    "start": {
                                      "line": 448,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 448,
                                      "column": 53
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 17794,
                                    "end": 17800,
                                    "loc": {
                                      "start": {
                                        "line": 448,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 448,
                                        "column": 45
                                      }
                                    },
                                    "name": "sketch"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 17801,
                                    "end": 17808,
                                    "loc": {
                                      "start": {
                                        "line": 448,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 448,
                                        "column": 53
                                      }
                                    },
                                    "name": "getPart"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 17811,
                                "end": 17818,
                                "loc": {
                                  "start": {
                                    "line": 448,
                                    "column": 56
                                  },
                                  "end": {
                                    "line": 448,
                                    "column": 63
                                  }
                                },
                                "name": "members"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17819,
                              "end": 17832,
                              "loc": {
                                "start": {
                                  "line": 448,
                                  "column": 64
                                },
                                "end": {
                                  "line": 448,
                                  "column": 77
                                }
                              },
                              "name": "ExpressionSet"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17833,
                            "end": 17842,
                            "loc": {
                              "start": {
                                "line": 448,
                                "column": 78
                              },
                              "end": {
                                "line": 448,
                                "column": 87
                              }
                            },
                            "name": "modelData"
                          },
                          "computed": false
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 17852,
                      "end": 17869,
                      "loc": {
                        "start": {
                          "line": 449,
                          "column": 8
                        },
                        "end": {
                          "line": 449,
                          "column": 25
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 17852,
                        "end": 17868,
                        "loc": {
                          "start": {
                            "line": 449,
                            "column": 8
                          },
                          "end": {
                            "line": 449,
                            "column": 24
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 17852,
                          "end": 17866,
                          "loc": {
                            "start": {
                              "line": 449,
                              "column": 8
                            },
                            "end": {
                              "line": 449,
                              "column": 22
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 17852,
                            "end": 17858,
                            "loc": {
                              "start": {
                                "line": 449,
                                "column": 8
                              },
                              "end": {
                                "line": 449,
                                "column": 14
                              }
                            },
                            "name": "sketch"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17859,
                            "end": 17866,
                            "loc": {
                              "start": {
                                "line": 449,
                                "column": 15
                              },
                              "end": {
                                "line": 449,
                                "column": 22
                              }
                            },
                            "name": "showBox"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 17878,
                      "end": 17899,
                      "loc": {
                        "start": {
                          "line": 450,
                          "column": 8
                        },
                        "end": {
                          "line": 450,
                          "column": 29
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 17878,
                        "end": 17898,
                        "loc": {
                          "start": {
                            "line": 450,
                            "column": 8
                          },
                          "end": {
                            "line": 450,
                            "column": 28
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 17878,
                          "end": 17896,
                          "loc": {
                            "start": {
                              "line": 450,
                              "column": 8
                            },
                            "end": {
                              "line": 450,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 17878,
                            "end": 17884,
                            "loc": {
                              "start": {
                                "line": 450,
                                "column": 8
                              },
                              "end": {
                                "line": 450,
                                "column": 14
                              }
                            },
                            "name": "sketch"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17885,
                            "end": 17896,
                            "loc": {
                              "start": {
                                "line": 450,
                                "column": 15
                              },
                              "end": {
                                "line": 450,
                                "column": 26
                              }
                            },
                            "name": "infiniteBox"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 17909,
                      "end": 17959,
                      "loc": {
                        "start": {
                          "line": 452,
                          "column": 8
                        },
                        "end": {
                          "line": 452,
                          "column": 58
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 17909,
                        "end": 17958,
                        "loc": {
                          "start": {
                            "line": 452,
                            "column": 8
                          },
                          "end": {
                            "line": 452,
                            "column": 57
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 17909,
                          "end": 17941,
                          "loc": {
                            "start": {
                              "line": 452,
                              "column": 8
                            },
                            "end": {
                              "line": 452,
                              "column": 40
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 17909,
                            "end": 17935,
                            "loc": {
                              "start": {
                                "line": 452,
                                "column": 8
                              },
                              "end": {
                                "line": 452,
                                "column": 34
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 17909,
                              "end": 17926,
                              "loc": {
                                "start": {
                                  "line": 452,
                                  "column": 8
                                },
                                "end": {
                                  "line": 452,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 17909,
                                "end": 17913,
                                "loc": {
                                  "start": {
                                    "line": 452,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 452,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 17914,
                                "end": 17926,
                                "loc": {
                                  "start": {
                                    "line": 452,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 452,
                                    "column": 25
                                  }
                                },
                                "name": "__parentView"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17927,
                              "end": 17935,
                              "loc": {
                                "start": {
                                  "line": 452,
                                  "column": 26
                                },
                                "end": {
                                  "line": 452,
                                  "column": 34
                                }
                              },
                              "name": "controls"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17936,
                            "end": 17941,
                            "loc": {
                              "start": {
                                "line": 452,
                                "column": 35
                              },
                              "end": {
                                "line": 452,
                                "column": 40
                              }
                            },
                            "name": "focus"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 17942,
                            "end": 17957,
                            "loc": {
                              "start": {
                                "line": 452,
                                "column": 41
                              },
                              "end": {
                                "line": 452,
                                "column": 56
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 17942,
                              "end": 17948,
                              "loc": {
                                "start": {
                                  "line": 452,
                                  "column": 41
                                },
                                "end": {
                                  "line": 452,
                                  "column": 47
                                }
                              },
                              "name": "sketch"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17949,
                              "end": 17957,
                              "loc": {
                                "start": {
                                  "line": 452,
                                  "column": 48
                                },
                                "end": {
                                  "line": 452,
                                  "column": 56
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 17969,
                      "end": 17997,
                      "loc": {
                        "start": {
                          "line": 454,
                          "column": 8
                        },
                        "end": {
                          "line": 454,
                          "column": 36
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 17973,
                          "end": 17996,
                          "loc": {
                            "start": {
                              "line": 454,
                              "column": 12
                            },
                            "end": {
                              "line": 454,
                              "column": 35
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 17973,
                            "end": 17974,
                            "loc": {
                              "start": {
                                "line": 454,
                                "column": 12
                              },
                              "end": {
                                "line": 454,
                                "column": 13
                              }
                            },
                            "name": "v"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 17977,
                            "end": 17996,
                            "loc": {
                              "start": {
                                "line": 454,
                                "column": 16
                              },
                              "end": {
                                "line": 454,
                                "column": 35
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 17981,
                              "end": 17994,
                              "loc": {
                                "start": {
                                  "line": 454,
                                  "column": 20
                                },
                                "end": {
                                  "line": 454,
                                  "column": 33
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 17981,
                                "end": 17986,
                                "loc": {
                                  "start": {
                                    "line": 454,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 454,
                                    "column": 25
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 17987,
                                "end": 17994,
                                "loc": {
                                  "start": {
                                    "line": 454,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 454,
                                    "column": 33
                                  }
                                },
                                "name": "Vector3"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 18006,
                      "end": 18052,
                      "loc": {
                        "start": {
                          "line": 455,
                          "column": 8
                        },
                        "end": {
                          "line": 455,
                          "column": 54
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 18006,
                        "end": 18051,
                        "loc": {
                          "start": {
                            "line": 455,
                            "column": 8
                          },
                          "end": {
                            "line": 455,
                            "column": 53
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 18006,
                          "end": 18048,
                          "loc": {
                            "start": {
                              "line": 455,
                              "column": 8
                            },
                            "end": {
                              "line": 455,
                              "column": 50
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 18006,
                            "end": 18030,
                            "loc": {
                              "start": {
                                "line": 455,
                                "column": 8
                              },
                              "end": {
                                "line": 455,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 18006,
                              "end": 18023,
                              "loc": {
                                "start": {
                                  "line": 455,
                                  "column": 8
                                },
                                "end": {
                                  "line": 455,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 18006,
                                "end": 18010,
                                "loc": {
                                  "start": {
                                    "line": 455,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 455,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 18011,
                                "end": 18023,
                                "loc": {
                                  "start": {
                                    "line": 455,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 455,
                                    "column": 25
                                  }
                                },
                                "name": "__parentView"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 18024,
                              "end": 18030,
                              "loc": {
                                "start": {
                                  "line": 455,
                                  "column": 26
                                },
                                "end": {
                                  "line": 455,
                                  "column": 32
                                }
                              },
                              "name": "camera"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 18031,
                            "end": 18048,
                            "loc": {
                              "start": {
                                "line": 455,
                                "column": 33
                              },
                              "end": {
                                "line": 455,
                                "column": 50
                              }
                            },
                            "name": "getWorldDirection"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 18049,
                            "end": 18050,
                            "loc": {
                              "start": {
                                "line": 455,
                                "column": 51
                              },
                              "end": {
                                "line": 455,
                                "column": 52
                              }
                            },
                            "name": "v"
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 18062,
                      "end": 18099,
                      "loc": {
                        "start": {
                          "line": 457,
                          "column": 8
                        },
                        "end": {
                          "line": 457,
                          "column": 45
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 18066,
                          "end": 18098,
                          "loc": {
                            "start": {
                              "line": 457,
                              "column": 12
                            },
                            "end": {
                              "line": 457,
                              "column": 44
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 18066,
                            "end": 18070,
                            "loc": {
                              "start": {
                                "line": 457,
                                "column": 12
                              },
                              "end": {
                                "line": 457,
                                "column": 16
                              }
                            },
                            "name": "negZ"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 18073,
                            "end": 18098,
                            "loc": {
                              "start": {
                                "line": 457,
                                "column": 19
                              },
                              "end": {
                                "line": 457,
                                "column": 44
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 18077,
                              "end": 18090,
                              "loc": {
                                "start": {
                                  "line": 457,
                                  "column": 23
                                },
                                "end": {
                                  "line": 457,
                                  "column": 36
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 18077,
                                "end": 18082,
                                "loc": {
                                  "start": {
                                    "line": 457,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 457,
                                    "column": 28
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 18083,
                                "end": 18090,
                                "loc": {
                                  "start": {
                                    "line": 457,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 457,
                                    "column": 36
                                  }
                                },
                                "name": "Vector3"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Literal",
                                "start": 18091,
                                "end": 18092,
                                "loc": {
                                  "start": {
                                    "line": 457,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 457,
                                    "column": 38
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              {
                                "type": "Literal",
                                "start": 18093,
                                "end": 18094,
                                "loc": {
                                  "start": {
                                    "line": 457,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 457,
                                    "column": 40
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              {
                                "type": "UnaryExpression",
                                "start": 18095,
                                "end": 18097,
                                "loc": {
                                  "start": {
                                    "line": 457,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 457,
                                    "column": 43
                                  }
                                },
                                "operator": "-",
                                "prefix": true,
                                "argument": {
                                  "type": "Literal",
                                  "start": 18096,
                                  "end": 18097,
                                  "loc": {
                                    "start": {
                                      "line": 457,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 457,
                                      "column": 43
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                }
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 18108,
                      "end": 18226,
                      "loc": {
                        "start": {
                          "line": 458,
                          "column": 8
                        },
                        "end": {
                          "line": 458,
                          "column": 126
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 18112,
                          "end": 18225,
                          "loc": {
                            "start": {
                              "line": 458,
                              "column": 12
                            },
                            "end": {
                              "line": 458,
                              "column": 125
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 18112,
                            "end": 18115,
                            "loc": {
                              "start": {
                                "line": 458,
                                "column": 12
                              },
                              "end": {
                                "line": 458,
                                "column": 15
                              }
                            },
                            "name": "phi"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 18118,
                            "end": 18225,
                            "loc": {
                              "start": {
                                "line": 458,
                                "column": 18
                              },
                              "end": {
                                "line": 458,
                                "column": 125
                              }
                            },
                            "left": {
                              "type": "BinaryExpression",
                              "start": 18118,
                              "end": 18129,
                              "loc": {
                                "start": {
                                  "line": 458,
                                  "column": 18
                                },
                                "end": {
                                  "line": 458,
                                  "column": 29
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 18118,
                                "end": 18125,
                                "loc": {
                                  "start": {
                                    "line": 458,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 458,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 18118,
                                  "end": 18122,
                                  "loc": {
                                    "start": {
                                      "line": 458,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 458,
                                      "column": 22
                                    }
                                  },
                                  "name": "Math"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 18123,
                                  "end": 18125,
                                  "loc": {
                                    "start": {
                                      "line": 458,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 458,
                                      "column": 25
                                    }
                                  },
                                  "name": "PI"
                                },
                                "computed": false
                              },
                              "operator": "/",
                              "right": {
                                "type": "Literal",
                                "start": 18128,
                                "end": 18129,
                                "loc": {
                                  "start": {
                                    "line": 458,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 458,
                                    "column": 29
                                  }
                                },
                                "value": 2,
                                "rawValue": 2,
                                "raw": "2"
                              }
                            },
                            "operator": "+",
                            "right": {
                              "type": "ConditionalExpression",
                              "start": 18133,
                              "end": 18224,
                              "loc": {
                                "start": {
                                  "line": 458,
                                  "column": 33
                                },
                                "end": {
                                  "line": 458,
                                  "column": 124
                                }
                              },
                              "test": {
                                "type": "BinaryExpression",
                                "start": 18134,
                                "end": 18150,
                                "loc": {
                                  "start": {
                                    "line": 458,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 458,
                                    "column": 50
                                  }
                                },
                                "left": {
                                  "type": "CallExpression",
                                  "start": 18134,
                                  "end": 18144,
                                  "loc": {
                                    "start": {
                                      "line": 458,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 458,
                                      "column": 44
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 18134,
                                    "end": 18142,
                                    "loc": {
                                      "start": {
                                        "line": 458,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 458,
                                        "column": 42
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 18134,
                                      "end": 18135,
                                      "loc": {
                                        "start": {
                                          "line": 458,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 458,
                                          "column": 35
                                        }
                                      },
                                      "name": "v"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18136,
                                      "end": 18142,
                                      "loc": {
                                        "start": {
                                          "line": 458,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 458,
                                          "column": 42
                                        }
                                      },
                                      "name": "length"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                },
                                "operator": "===",
                                "right": {
                                  "type": "Literal",
                                  "start": 18149,
                                  "end": 18150,
                                  "loc": {
                                    "start": {
                                      "line": 458,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 458,
                                      "column": 50
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                "parenthesizedExpression": true
                              },
                              "consequent": {
                                "type": "BinaryExpression",
                                "start": 18154,
                                "end": 18165,
                                "loc": {
                                  "start": {
                                    "line": 458,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 458,
                                    "column": 65
                                  }
                                },
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 18154,
                                  "end": 18161,
                                  "loc": {
                                    "start": {
                                      "line": 458,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 458,
                                      "column": 61
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 18154,
                                    "end": 18158,
                                    "loc": {
                                      "start": {
                                        "line": 458,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 458,
                                        "column": 58
                                      }
                                    },
                                    "name": "Math"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 18159,
                                    "end": 18161,
                                    "loc": {
                                      "start": {
                                        "line": 458,
                                        "column": 59
                                      },
                                      "end": {
                                        "line": 458,
                                        "column": 61
                                      }
                                    },
                                    "name": "PI"
                                  },
                                  "computed": false
                                },
                                "operator": "/",
                                "right": {
                                  "type": "Literal",
                                  "start": 18164,
                                  "end": 18165,
                                  "loc": {
                                    "start": {
                                      "line": 458,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 458,
                                      "column": 65
                                    }
                                  },
                                  "value": 2,
                                  "rawValue": 2,
                                  "raw": "2"
                                }
                              },
                              "alternate": {
                                "type": "BinaryExpression",
                                "start": 18168,
                                "end": 18224,
                                "loc": {
                                  "start": {
                                    "line": 458,
                                    "column": 68
                                  },
                                  "end": {
                                    "line": 458,
                                    "column": 124
                                  }
                                },
                                "left": {
                                  "type": "CallExpression",
                                  "start": 18168,
                                  "end": 18183,
                                  "loc": {
                                    "start": {
                                      "line": 458,
                                      "column": 68
                                    },
                                    "end": {
                                      "line": 458,
                                      "column": 83
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 18168,
                                    "end": 18177,
                                    "loc": {
                                      "start": {
                                        "line": 458,
                                        "column": 68
                                      },
                                      "end": {
                                        "line": 458,
                                        "column": 77
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 18168,
                                      "end": 18169,
                                      "loc": {
                                        "start": {
                                          "line": 458,
                                          "column": 68
                                        },
                                        "end": {
                                          "line": 458,
                                          "column": 69
                                        }
                                      },
                                      "name": "v"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18170,
                                      "end": 18177,
                                      "loc": {
                                        "start": {
                                          "line": 458,
                                          "column": 70
                                        },
                                        "end": {
                                          "line": 458,
                                          "column": 77
                                        }
                                      },
                                      "name": "angleTo"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 18178,
                                      "end": 18182,
                                      "loc": {
                                        "start": {
                                          "line": 458,
                                          "column": 78
                                        },
                                        "end": {
                                          "line": 458,
                                          "column": 82
                                        }
                                      },
                                      "name": "negZ"
                                    }
                                  ]
                                },
                                "operator": "*",
                                "right": {
                                  "type": "ConditionalExpression",
                                  "start": 18187,
                                  "end": 18223,
                                  "loc": {
                                    "start": {
                                      "line": 458,
                                      "column": 87
                                    },
                                    "end": {
                                      "line": 458,
                                      "column": 123
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 18187,
                                    "end": 18214,
                                    "loc": {
                                      "start": {
                                        "line": 458,
                                        "column": 87
                                      },
                                      "end": {
                                        "line": 458,
                                        "column": 114
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 18187,
                                      "end": 18210,
                                      "loc": {
                                        "start": {
                                          "line": 458,
                                          "column": 87
                                        },
                                        "end": {
                                          "line": 458,
                                          "column": 110
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 18187,
                                        "end": 18208,
                                        "loc": {
                                          "start": {
                                            "line": 458,
                                            "column": 87
                                          },
                                          "end": {
                                            "line": 458,
                                            "column": 108
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 18187,
                                          "end": 18202,
                                          "loc": {
                                            "start": {
                                              "line": 458,
                                              "column": 87
                                            },
                                            "end": {
                                              "line": 458,
                                              "column": 102
                                            }
                                          },
                                          "object": {
                                            "type": "CallExpression",
                                            "start": 18187,
                                            "end": 18196,
                                            "loc": {
                                              "start": {
                                                "line": 458,
                                                "column": 87
                                              },
                                              "end": {
                                                "line": 458,
                                                "column": 96
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 18187,
                                              "end": 18194,
                                              "loc": {
                                                "start": {
                                                  "line": 458,
                                                  "column": 87
                                                },
                                                "end": {
                                                  "line": 458,
                                                  "column": 94
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 18187,
                                                "end": 18188,
                                                "loc": {
                                                  "start": {
                                                    "line": 458,
                                                    "column": 87
                                                  },
                                                  "end": {
                                                    "line": 458,
                                                    "column": 88
                                                  }
                                                },
                                                "name": "v"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 18189,
                                                "end": 18194,
                                                "loc": {
                                                  "start": {
                                                    "line": 458,
                                                    "column": 89
                                                  },
                                                  "end": {
                                                    "line": 458,
                                                    "column": 94
                                                  }
                                                },
                                                "name": "clone"
                                              },
                                              "computed": false
                                            },
                                            "arguments": []
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 18197,
                                            "end": 18202,
                                            "loc": {
                                              "start": {
                                                "line": 458,
                                                "column": 97
                                              },
                                              "end": {
                                                "line": 458,
                                                "column": 102
                                              }
                                            },
                                            "name": "cross"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 18203,
                                            "end": 18207,
                                            "loc": {
                                              "start": {
                                                "line": 458,
                                                "column": 103
                                              },
                                              "end": {
                                                "line": 458,
                                                "column": 107
                                              }
                                            },
                                            "name": "negZ"
                                          }
                                        ]
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 18209,
                                        "end": 18210,
                                        "loc": {
                                          "start": {
                                            "line": 458,
                                            "column": 109
                                          },
                                          "end": {
                                            "line": 458,
                                            "column": 110
                                          }
                                        },
                                        "name": "z"
                                      },
                                      "computed": false
                                    },
                                    "operator": ">",
                                    "right": {
                                      "type": "Literal",
                                      "start": 18213,
                                      "end": 18214,
                                      "loc": {
                                        "start": {
                                          "line": 458,
                                          "column": 113
                                        },
                                        "end": {
                                          "line": 458,
                                          "column": 114
                                        }
                                      },
                                      "value": 0,
                                      "rawValue": 0,
                                      "raw": "0"
                                    }
                                  },
                                  "consequent": {
                                    "type": "Literal",
                                    "start": 18217,
                                    "end": 18218,
                                    "loc": {
                                      "start": {
                                        "line": 458,
                                        "column": 117
                                      },
                                      "end": {
                                        "line": 458,
                                        "column": 118
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  },
                                  "alternate": {
                                    "type": "UnaryExpression",
                                    "start": 18221,
                                    "end": 18223,
                                    "loc": {
                                      "start": {
                                        "line": 458,
                                        "column": 121
                                      },
                                      "end": {
                                        "line": 458,
                                        "column": 123
                                      }
                                    },
                                    "operator": "-",
                                    "prefix": true,
                                    "argument": {
                                      "type": "Literal",
                                      "start": 18222,
                                      "end": 18223,
                                      "loc": {
                                        "start": {
                                          "line": 458,
                                          "column": 122
                                        },
                                        "end": {
                                          "line": 458,
                                          "column": 123
                                        }
                                      },
                                      "value": 1,
                                      "rawValue": 1,
                                      "raw": "1"
                                    }
                                  },
                                  "parenthesizedExpression": true
                                }
                              },
                              "parenthesizedExpression": true
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 18236,
                      "end": 18246,
                      "loc": {
                        "start": {
                          "line": 460,
                          "column": 8
                        },
                        "end": {
                          "line": 460,
                          "column": 18
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 18236,
                        "end": 18245,
                        "loc": {
                          "start": {
                            "line": 460,
                            "column": 8
                          },
                          "end": {
                            "line": 460,
                            "column": 17
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 18236,
                          "end": 18239,
                          "loc": {
                            "start": {
                              "line": 460,
                              "column": 8
                            },
                            "end": {
                              "line": 460,
                              "column": 11
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 18236,
                            "end": 18237,
                            "loc": {
                              "start": {
                                "line": 460,
                                "column": 8
                              },
                              "end": {
                                "line": 460,
                                "column": 9
                              }
                            },
                            "name": "v"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 18238,
                            "end": 18239,
                            "loc": {
                              "start": {
                                "line": 460,
                                "column": 10
                              },
                              "end": {
                                "line": 460,
                                "column": 11
                              }
                            },
                            "name": "z"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 18242,
                          "end": 18245,
                          "loc": {
                            "start": {
                              "line": 460,
                              "column": 14
                            },
                            "end": {
                              "line": 460,
                              "column": 17
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0.0"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 18255,
                      "end": 18269,
                      "loc": {
                        "start": {
                          "line": 461,
                          "column": 8
                        },
                        "end": {
                          "line": 461,
                          "column": 22
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 18255,
                        "end": 18268,
                        "loc": {
                          "start": {
                            "line": 461,
                            "column": 8
                          },
                          "end": {
                            "line": 461,
                            "column": 21
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 18255,
                          "end": 18266,
                          "loc": {
                            "start": {
                              "line": 461,
                              "column": 8
                            },
                            "end": {
                              "line": 461,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 18255,
                            "end": 18256,
                            "loc": {
                              "start": {
                                "line": 461,
                                "column": 8
                              },
                              "end": {
                                "line": 461,
                                "column": 9
                              }
                            },
                            "name": "v"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 18257,
                            "end": 18266,
                            "loc": {
                              "start": {
                                "line": 461,
                                "column": 10
                              },
                              "end": {
                                "line": 461,
                                "column": 19
                              }
                            },
                            "name": "normalize"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 18279,
                      "end": 18312,
                      "loc": {
                        "start": {
                          "line": 463,
                          "column": 8
                        },
                        "end": {
                          "line": 463,
                          "column": 41
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 18283,
                          "end": 18311,
                          "loc": {
                            "start": {
                              "line": 463,
                              "column": 12
                            },
                            "end": {
                              "line": 463,
                              "column": 40
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 18283,
                            "end": 18284,
                            "loc": {
                              "start": {
                                "line": 463,
                                "column": 12
                              },
                              "end": {
                                "line": 463,
                                "column": 13
                              }
                            },
                            "name": "Y"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 18287,
                            "end": 18311,
                            "loc": {
                              "start": {
                                "line": 463,
                                "column": 16
                              },
                              "end": {
                                "line": 463,
                                "column": 40
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 18291,
                              "end": 18304,
                              "loc": {
                                "start": {
                                  "line": 463,
                                  "column": 20
                                },
                                "end": {
                                  "line": 463,
                                  "column": 33
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 18291,
                                "end": 18296,
                                "loc": {
                                  "start": {
                                    "line": 463,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 463,
                                    "column": 25
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 18297,
                                "end": 18304,
                                "loc": {
                                  "start": {
                                    "line": 463,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 463,
                                    "column": 33
                                  }
                                },
                                "name": "Vector3"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Literal",
                                "start": 18305,
                                "end": 18306,
                                "loc": {
                                  "start": {
                                    "line": 463,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 463,
                                    "column": 35
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              {
                                "type": "Literal",
                                "start": 18307,
                                "end": 18308,
                                "loc": {
                                  "start": {
                                    "line": 463,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 463,
                                    "column": 37
                                  }
                                },
                                "value": 1,
                                "rawValue": 1,
                                "raw": "1"
                              },
                              {
                                "type": "Literal",
                                "start": 18309,
                                "end": 18310,
                                "loc": {
                                  "start": {
                                    "line": 463,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 463,
                                    "column": 39
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 18321,
                      "end": 18419,
                      "loc": {
                        "start": {
                          "line": 464,
                          "column": 8
                        },
                        "end": {
                          "line": 464,
                          "column": 106
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 18325,
                          "end": 18418,
                          "loc": {
                            "start": {
                              "line": 464,
                              "column": 12
                            },
                            "end": {
                              "line": 464,
                              "column": 105
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 18325,
                            "end": 18330,
                            "loc": {
                              "start": {
                                "line": 464,
                                "column": 12
                              },
                              "end": {
                                "line": 464,
                                "column": 17
                              }
                            },
                            "name": "theta"
                          },
                          "init": {
                            "type": "ConditionalExpression",
                            "start": 18333,
                            "end": 18418,
                            "loc": {
                              "start": {
                                "line": 464,
                                "column": 20
                              },
                              "end": {
                                "line": 464,
                                "column": 105
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 18334,
                              "end": 18350,
                              "loc": {
                                "start": {
                                  "line": 464,
                                  "column": 21
                                },
                                "end": {
                                  "line": 464,
                                  "column": 37
                                }
                              },
                              "left": {
                                "type": "CallExpression",
                                "start": 18334,
                                "end": 18344,
                                "loc": {
                                  "start": {
                                    "line": 464,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 464,
                                    "column": 31
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 18334,
                                  "end": 18342,
                                  "loc": {
                                    "start": {
                                      "line": 464,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 464,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 18334,
                                    "end": 18335,
                                    "loc": {
                                      "start": {
                                        "line": 464,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 464,
                                        "column": 22
                                      }
                                    },
                                    "name": "v"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 18336,
                                    "end": 18342,
                                    "loc": {
                                      "start": {
                                        "line": 464,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 464,
                                        "column": 29
                                      }
                                    },
                                    "name": "length"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "operator": "===",
                              "right": {
                                "type": "Literal",
                                "start": 18349,
                                "end": 18350,
                                "loc": {
                                  "start": {
                                    "line": 464,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 464,
                                    "column": 37
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              "parenthesizedExpression": true
                            },
                            "consequent": {
                              "type": "BinaryExpression",
                              "start": 18354,
                              "end": 18365,
                              "loc": {
                                "start": {
                                  "line": 464,
                                  "column": 41
                                },
                                "end": {
                                  "line": 464,
                                  "column": 52
                                }
                              },
                              "left": {
                                "type": "Literal",
                                "start": 18354,
                                "end": 18355,
                                "loc": {
                                  "start": {
                                    "line": 464,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 464,
                                    "column": 42
                                  }
                                },
                                "value": 2,
                                "rawValue": 2,
                                "raw": "2"
                              },
                              "operator": "*",
                              "right": {
                                "type": "MemberExpression",
                                "start": 18358,
                                "end": 18365,
                                "loc": {
                                  "start": {
                                    "line": 464,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 464,
                                    "column": 52
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 18358,
                                  "end": 18362,
                                  "loc": {
                                    "start": {
                                      "line": 464,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 464,
                                      "column": 49
                                    }
                                  },
                                  "name": "Math"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 18363,
                                  "end": 18365,
                                  "loc": {
                                    "start": {
                                      "line": 464,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 464,
                                      "column": 52
                                    }
                                  },
                                  "name": "PI"
                                },
                                "computed": false
                              }
                            },
                            "alternate": {
                              "type": "BinaryExpression",
                              "start": 18368,
                              "end": 18418,
                              "loc": {
                                "start": {
                                  "line": 464,
                                  "column": 55
                                },
                                "end": {
                                  "line": 464,
                                  "column": 105
                                }
                              },
                              "left": {
                                "type": "CallExpression",
                                "start": 18368,
                                "end": 18380,
                                "loc": {
                                  "start": {
                                    "line": 464,
                                    "column": 55
                                  },
                                  "end": {
                                    "line": 464,
                                    "column": 67
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 18368,
                                  "end": 18377,
                                  "loc": {
                                    "start": {
                                      "line": 464,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 464,
                                      "column": 64
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 18368,
                                    "end": 18369,
                                    "loc": {
                                      "start": {
                                        "line": 464,
                                        "column": 55
                                      },
                                      "end": {
                                        "line": 464,
                                        "column": 56
                                      }
                                    },
                                    "name": "v"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 18370,
                                    "end": 18377,
                                    "loc": {
                                      "start": {
                                        "line": 464,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 464,
                                        "column": 64
                                      }
                                    },
                                    "name": "angleTo"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 18378,
                                    "end": 18379,
                                    "loc": {
                                      "start": {
                                        "line": 464,
                                        "column": 65
                                      },
                                      "end": {
                                        "line": 464,
                                        "column": 66
                                      }
                                    },
                                    "name": "Y"
                                  }
                                ]
                              },
                              "operator": "*",
                              "right": {
                                "type": "ConditionalExpression",
                                "start": 18384,
                                "end": 18417,
                                "loc": {
                                  "start": {
                                    "line": 464,
                                    "column": 71
                                  },
                                  "end": {
                                    "line": 464,
                                    "column": 104
                                  }
                                },
                                "test": {
                                  "type": "BinaryExpression",
                                  "start": 18384,
                                  "end": 18408,
                                  "loc": {
                                    "start": {
                                      "line": 464,
                                      "column": 71
                                    },
                                    "end": {
                                      "line": 464,
                                      "column": 95
                                    }
                                  },
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 18384,
                                    "end": 18404,
                                    "loc": {
                                      "start": {
                                        "line": 464,
                                        "column": 71
                                      },
                                      "end": {
                                        "line": 464,
                                        "column": 91
                                      }
                                    },
                                    "object": {
                                      "type": "CallExpression",
                                      "start": 18384,
                                      "end": 18402,
                                      "loc": {
                                        "start": {
                                          "line": 464,
                                          "column": 71
                                        },
                                        "end": {
                                          "line": 464,
                                          "column": 89
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 18384,
                                        "end": 18399,
                                        "loc": {
                                          "start": {
                                            "line": 464,
                                            "column": 71
                                          },
                                          "end": {
                                            "line": 464,
                                            "column": 86
                                          }
                                        },
                                        "object": {
                                          "type": "CallExpression",
                                          "start": 18384,
                                          "end": 18393,
                                          "loc": {
                                            "start": {
                                              "line": 464,
                                              "column": 71
                                            },
                                            "end": {
                                              "line": 464,
                                              "column": 80
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 18384,
                                            "end": 18391,
                                            "loc": {
                                              "start": {
                                                "line": 464,
                                                "column": 71
                                              },
                                              "end": {
                                                "line": 464,
                                                "column": 78
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 18384,
                                              "end": 18385,
                                              "loc": {
                                                "start": {
                                                  "line": 464,
                                                  "column": 71
                                                },
                                                "end": {
                                                  "line": 464,
                                                  "column": 72
                                                }
                                              },
                                              "name": "v"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 18386,
                                              "end": 18391,
                                              "loc": {
                                                "start": {
                                                  "line": 464,
                                                  "column": 73
                                                },
                                                "end": {
                                                  "line": 464,
                                                  "column": 78
                                                }
                                              },
                                              "name": "clone"
                                            },
                                            "computed": false
                                          },
                                          "arguments": []
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 18394,
                                          "end": 18399,
                                          "loc": {
                                            "start": {
                                              "line": 464,
                                              "column": 81
                                            },
                                            "end": {
                                              "line": 464,
                                              "column": 86
                                            }
                                          },
                                          "name": "cross"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 18400,
                                          "end": 18401,
                                          "loc": {
                                            "start": {
                                              "line": 464,
                                              "column": 87
                                            },
                                            "end": {
                                              "line": 464,
                                              "column": 88
                                            }
                                          },
                                          "name": "Y"
                                        }
                                      ]
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18403,
                                      "end": 18404,
                                      "loc": {
                                        "start": {
                                          "line": 464,
                                          "column": 90
                                        },
                                        "end": {
                                          "line": 464,
                                          "column": 91
                                        }
                                      },
                                      "name": "z"
                                    },
                                    "computed": false
                                  },
                                  "operator": ">",
                                  "right": {
                                    "type": "Literal",
                                    "start": 18407,
                                    "end": 18408,
                                    "loc": {
                                      "start": {
                                        "line": 464,
                                        "column": 94
                                      },
                                      "end": {
                                        "line": 464,
                                        "column": 95
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  }
                                },
                                "consequent": {
                                  "type": "Literal",
                                  "start": 18411,
                                  "end": 18412,
                                  "loc": {
                                    "start": {
                                      "line": 464,
                                      "column": 98
                                    },
                                    "end": {
                                      "line": 464,
                                      "column": 99
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                "alternate": {
                                  "type": "UnaryExpression",
                                  "start": 18415,
                                  "end": 18417,
                                  "loc": {
                                    "start": {
                                      "line": 464,
                                      "column": 102
                                    },
                                    "end": {
                                      "line": 464,
                                      "column": 104
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Literal",
                                    "start": 18416,
                                    "end": 18417,
                                    "loc": {
                                      "start": {
                                        "line": 464,
                                        "column": 103
                                      },
                                      "end": {
                                        "line": 464,
                                        "column": 104
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  }
                                },
                                "parenthesizedExpression": true
                              }
                            }
                          }
                        }
                      ],
                      "kind": "var",
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "{ value: 0, easing: this.easing, duration: this.duration }",
                          "start": 18428,
                          "end": 18488,
                          "loc": {
                            "start": {
                              "line": 465,
                              "column": 8
                            },
                            "end": {
                              "line": 465,
                              "column": 68
                            }
                          },
                          "range": [
                            18428,
                            18488
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 18497,
                      "end": 18602,
                      "loc": {
                        "start": {
                          "line": 466,
                          "column": 8
                        },
                        "end": {
                          "line": 466,
                          "column": 113
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 18497,
                        "end": 18601,
                        "loc": {
                          "start": {
                            "line": 466,
                            "column": 8
                          },
                          "end": {
                            "line": 466,
                            "column": 112
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 18497,
                          "end": 18530,
                          "loc": {
                            "start": {
                              "line": 466,
                              "column": 8
                            },
                            "end": {
                              "line": 466,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 18497,
                            "end": 18523,
                            "loc": {
                              "start": {
                                "line": 466,
                                "column": 8
                              },
                              "end": {
                                "line": 466,
                                "column": 34
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 18497,
                              "end": 18514,
                              "loc": {
                                "start": {
                                  "line": 466,
                                  "column": 8
                                },
                                "end": {
                                  "line": 466,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 18497,
                                "end": 18501,
                                "loc": {
                                  "start": {
                                    "line": 466,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 466,
                                    "column": 12
                                  }
                                },
                                "leadingComments": null
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 18502,
                                "end": 18514,
                                "loc": {
                                  "start": {
                                    "line": 466,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 466,
                                    "column": 25
                                  }
                                },
                                "name": "__parentView"
                              },
                              "computed": false,
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 18515,
                              "end": 18523,
                              "loc": {
                                "start": {
                                  "line": 466,
                                  "column": 26
                                },
                                "end": {
                                  "line": 466,
                                  "column": 34
                                }
                              },
                              "name": "controls"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 18524,
                            "end": 18530,
                            "loc": {
                              "start": {
                                "line": 466,
                                "column": 35
                              },
                              "end": {
                                "line": 466,
                                "column": 41
                              }
                            },
                            "name": "rotate"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "ObjectExpression",
                            "start": 18531,
                            "end": 18565,
                            "loc": {
                              "start": {
                                "line": 466,
                                "column": 42
                              },
                              "end": {
                                "line": 466,
                                "column": 76
                              }
                            },
                            "properties": [
                              {
                                "type": "Property",
                                "start": 18532,
                                "end": 18545,
                                "loc": {
                                  "start": {
                                    "line": 466,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 466,
                                    "column": 56
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 18532,
                                  "end": 18537,
                                  "loc": {
                                    "start": {
                                      "line": 466,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 466,
                                      "column": 48
                                    }
                                  },
                                  "name": "value"
                                },
                                "value": {
                                  "type": "Identifier",
                                  "start": 18540,
                                  "end": 18545,
                                  "loc": {
                                    "start": {
                                      "line": 466,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 466,
                                      "column": 56
                                    }
                                  },
                                  "name": "theta",
                                  "leadingComments": null,
                                  "trailingComments": null
                                },
                                "kind": "init",
                                "trailingComments": [
                                  {
                                    "type": "Block",
                                    "value": ", duration : 1",
                                    "start": 18546,
                                    "end": 18564,
                                    "loc": {
                                      "start": {
                                        "line": 466,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 466,
                                        "column": 75
                                      }
                                    },
                                    "range": [
                                      18546,
                                      18564
                                    ]
                                  }
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ObjectExpression",
                            "start": 18568,
                            "end": 18600,
                            "loc": {
                              "start": {
                                "line": 466,
                                "column": 79
                              },
                              "end": {
                                "line": 466,
                                "column": 111
                              }
                            },
                            "properties": [
                              {
                                "type": "Property",
                                "start": 18569,
                                "end": 18580,
                                "loc": {
                                  "start": {
                                    "line": 466,
                                    "column": 80
                                  },
                                  "end": {
                                    "line": 466,
                                    "column": 91
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 18569,
                                  "end": 18574,
                                  "loc": {
                                    "start": {
                                      "line": 466,
                                      "column": 80
                                    },
                                    "end": {
                                      "line": 466,
                                      "column": 85
                                    }
                                  },
                                  "name": "value",
                                  "leadingComments": null
                                },
                                "value": {
                                  "type": "Identifier",
                                  "start": 18577,
                                  "end": 18580,
                                  "loc": {
                                    "start": {
                                      "line": 466,
                                      "column": 88
                                    },
                                    "end": {
                                      "line": 466,
                                      "column": 91
                                    }
                                  },
                                  "name": "phi",
                                  "leadingComments": null,
                                  "trailingComments": null
                                },
                                "kind": "init",
                                "leadingComments": null,
                                "trailingComments": [
                                  {
                                    "type": "Block",
                                    "value": ", duration : 1",
                                    "start": 18581,
                                    "end": 18599,
                                    "loc": {
                                      "start": {
                                        "line": 466,
                                        "column": 92
                                      },
                                      "end": {
                                        "line": 466,
                                        "column": 110
                                      }
                                    },
                                    "range": [
                                      18581,
                                      18599
                                    ]
                                  }
                                ]
                              }
                            ],
                            "leadingComments": [
                              {
                                "type": "Block",
                                "value": ", duration : 1",
                                "start": 18546,
                                "end": 18564,
                                "loc": {
                                  "start": {
                                    "line": 466,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 466,
                                    "column": 75
                                  }
                                },
                                "range": [
                                  18546,
                                  18564
                                ]
                              }
                            ]
                          }
                        ],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "{ value: 0, easing: this.easing, duration: this.duration }",
                          "start": 18428,
                          "end": 18488,
                          "loc": {
                            "start": {
                              "line": 465,
                              "column": 8
                            },
                            "end": {
                              "line": 465,
                              "column": 68
                            }
                          },
                          "range": [
                            18428,
                            18488
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "//this.__parentView.controls.zoom(100);// to be changed according to camera coordinates and position",
                          "start": 18612,
                          "end": 18714,
                          "loc": {
                            "start": {
                              "line": 468,
                              "column": 8
                            },
                            "end": {
                              "line": 468,
                              "column": 110
                            }
                          },
                          "range": [
                            18612,
                            18714
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 18723,
                      "end": 18766,
                      "loc": {
                        "start": {
                          "line": 469,
                          "column": 8
                        },
                        "end": {
                          "line": 469,
                          "column": 51
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 18723,
                        "end": 18765,
                        "loc": {
                          "start": {
                            "line": 469,
                            "column": 8
                          },
                          "end": {
                            "line": 469,
                            "column": 50
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 18723,
                          "end": 18758,
                          "loc": {
                            "start": {
                              "line": 469,
                              "column": 8
                            },
                            "end": {
                              "line": 469,
                              "column": 43
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 18723,
                            "end": 18749,
                            "loc": {
                              "start": {
                                "line": 469,
                                "column": 8
                              },
                              "end": {
                                "line": 469,
                                "column": 34
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 18723,
                              "end": 18740,
                              "loc": {
                                "start": {
                                  "line": 469,
                                  "column": 8
                                },
                                "end": {
                                  "line": 469,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 18723,
                                "end": 18727,
                                "loc": {
                                  "start": {
                                    "line": 469,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 469,
                                    "column": 12
                                  }
                                },
                                "leadingComments": null
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 18728,
                                "end": 18740,
                                "loc": {
                                  "start": {
                                    "line": 469,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 469,
                                    "column": 25
                                  }
                                },
                                "name": "__parentView"
                              },
                              "computed": false,
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 18741,
                              "end": 18749,
                              "loc": {
                                "start": {
                                  "line": 469,
                                  "column": 26
                                },
                                "end": {
                                  "line": 469,
                                  "column": 34
                                }
                              },
                              "name": "controls"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 18750,
                            "end": 18758,
                            "loc": {
                              "start": {
                                "line": 469,
                                "column": 35
                              },
                              "end": {
                                "line": 469,
                                "column": 43
                              }
                            },
                            "name": "noRotate"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "Literal",
                          "start": 18761,
                          "end": 18765,
                          "loc": {
                            "start": {
                              "line": 469,
                              "column": 46
                            },
                            "end": {
                              "line": 469,
                              "column": 50
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "Block",
                          "value": ", duration : 1",
                          "start": 18581,
                          "end": 18599,
                          "loc": {
                            "start": {
                              "line": 466,
                              "column": 92
                            },
                            "end": {
                              "line": 466,
                              "column": 110
                            }
                          },
                          "range": [
                            18581,
                            18599
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": "//this.__parentView.controls.zoom(100);// to be changed according to camera coordinates and position",
                          "start": 18612,
                          "end": 18714,
                          "loc": {
                            "start": {
                              "line": 468,
                              "column": 8
                            },
                            "end": {
                              "line": 468,
                              "column": 110
                            }
                          },
                          "range": [
                            18612,
                            18714
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "make sure that dimensions are present",
                          "start": 18776,
                          "end": 18815,
                          "loc": {
                            "start": {
                              "line": 471,
                              "column": 8
                            },
                            "end": {
                              "line": 471,
                              "column": 47
                            }
                          },
                          "range": [
                            18776,
                            18815
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 18824,
                      "end": 18867,
                      "loc": {
                        "start": {
                          "line": 472,
                          "column": 8
                        },
                        "end": {
                          "line": 472,
                          "column": 51
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 18824,
                        "end": 18866,
                        "loc": {
                          "start": {
                            "line": 472,
                            "column": 8
                          },
                          "end": {
                            "line": 472,
                            "column": 50
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 18830,
                          "end": 18866,
                          "loc": {
                            "start": {
                              "line": 472,
                              "column": 14
                            },
                            "end": {
                              "line": 472,
                              "column": 50
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 18830,
                            "end": 18853,
                            "loc": {
                              "start": {
                                "line": 472,
                                "column": 14
                              },
                              "end": {
                                "line": 472,
                                "column": 37
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 18830,
                              "end": 18836,
                              "loc": {
                                "start": {
                                  "line": 472,
                                  "column": 14
                                },
                                "end": {
                                  "line": 472,
                                  "column": 20
                                }
                              },
                              "name": "sketch"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 18837,
                              "end": 18853,
                              "loc": {
                                "start": {
                                  "line": 472,
                                  "column": 21
                                },
                                "end": {
                                  "line": 472,
                                  "column": 37
                                }
                              },
                              "name": "updateFromServer"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 18854,
                              "end": 18865,
                              "loc": {
                                "start": {
                                  "line": 472,
                                  "column": 38
                                },
                                "end": {
                                  "line": 472,
                                  "column": 49
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 18854,
                                "end": 18858,
                                "loc": {
                                  "start": {
                                    "line": 472,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 472,
                                    "column": 42
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 18859,
                                "end": 18865,
                                "loc": {
                                  "start": {
                                    "line": 472,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 472,
                                    "column": 49
                                  }
                                },
                                "name": "server"
                              },
                              "computed": false
                            }
                          ]
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "make sure that dimensions are present",
                          "start": 18776,
                          "end": 18815,
                          "loc": {
                            "start": {
                              "line": 471,
                              "column": 8
                            },
                            "end": {
                              "line": 471,
                              "column": 47
                            }
                          },
                          "range": [
                            18776,
                            18815
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 18877,
                      "end": 18908,
                      "loc": {
                        "start": {
                          "line": 474,
                          "column": 8
                        },
                        "end": {
                          "line": 474,
                          "column": 39
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 18877,
                        "end": 18907,
                        "loc": {
                          "start": {
                            "line": 474,
                            "column": 8
                          },
                          "end": {
                            "line": 474,
                            "column": 38
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 18883,
                          "end": 18907,
                          "loc": {
                            "start": {
                              "line": 474,
                              "column": 14
                            },
                            "end": {
                              "line": 474,
                              "column": 38
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 18883,
                            "end": 18898,
                            "loc": {
                              "start": {
                                "line": 474,
                                "column": 14
                              },
                              "end": {
                                "line": 474,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 18883,
                              "end": 18887,
                              "loc": {
                                "start": {
                                  "line": 474,
                                  "column": 14
                                },
                                "end": {
                                  "line": 474,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 18888,
                              "end": 18898,
                              "loc": {
                                "start": {
                                  "line": 474,
                                  "column": 19
                                },
                                "end": {
                                  "line": 474,
                                  "column": 29
                                }
                              },
                              "name": "chooseTool"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "start": 18899,
                              "end": 18906,
                              "loc": {
                                "start": {
                                  "line": 474,
                                  "column": 30
                                },
                                "end": {
                                  "line": 474,
                                  "column": 37
                                }
                              },
                              "value": "empty",
                              "rawValue": "empty",
                              "raw": "'empty'"
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 18918,
                      "end": 18933,
                      "loc": {
                        "start": {
                          "line": 476,
                          "column": 8
                        },
                        "end": {
                          "line": 476,
                          "column": 23
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 18918,
                        "end": 18932,
                        "loc": {
                          "start": {
                            "line": 476,
                            "column": 8
                          },
                          "end": {
                            "line": 476,
                            "column": 22
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 18918,
                          "end": 18930,
                          "loc": {
                            "start": {
                              "line": 476,
                              "column": 8
                            },
                            "end": {
                              "line": 476,
                              "column": 20
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 18918,
                            "end": 18922,
                            "loc": {
                              "start": {
                                "line": 476,
                                "column": 8
                              },
                              "end": {
                                "line": 476,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 18923,
                            "end": 18930,
                            "loc": {
                              "start": {
                                "line": 476,
                                "column": 13
                              },
                              "end": {
                                "line": 476,
                                "column": 20
                              }
                            },
                            "name": "refresh"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 18943,
                      "end": 18973,
                      "loc": {
                        "start": {
                          "line": 478,
                          "column": 8
                        },
                        "end": {
                          "line": 478,
                          "column": 38
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 18943,
                        "end": 18972,
                        "loc": {
                          "start": {
                            "line": 478,
                            "column": 8
                          },
                          "end": {
                            "line": 478,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 18943,
                          "end": 18970,
                          "loc": {
                            "start": {
                              "line": 478,
                              "column": 8
                            },
                            "end": {
                              "line": 478,
                              "column": 35
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 18943,
                            "end": 18961,
                            "loc": {
                              "start": {
                                "line": 478,
                                "column": 8
                              },
                              "end": {
                                "line": 478,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 18943,
                              "end": 18947,
                              "loc": {
                                "start": {
                                  "line": 478,
                                  "column": 8
                                },
                                "end": {
                                  "line": 478,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 18948,
                              "end": 18961,
                              "loc": {
                                "start": {
                                  "line": 478,
                                  "column": 13
                                },
                                "end": {
                                  "line": 478,
                                  "column": 26
                                }
                              },
                              "name": "currentSketch"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 18962,
                            "end": 18970,
                            "loc": {
                              "start": {
                                "line": 478,
                                "column": 27
                              },
                              "end": {
                                "line": 478,
                                "column": 35
                              }
                            },
                            "name": "showGrid"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 18982,
                      "end": 19018,
                      "loc": {
                        "start": {
                          "line": 479,
                          "column": 8
                        },
                        "end": {
                          "line": 479,
                          "column": 44
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 18982,
                        "end": 19017,
                        "loc": {
                          "start": {
                            "line": 479,
                            "column": 8
                          },
                          "end": {
                            "line": 479,
                            "column": 43
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 18982,
                          "end": 19015,
                          "loc": {
                            "start": {
                              "line": 479,
                              "column": 8
                            },
                            "end": {
                              "line": 479,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 18982,
                            "end": 19000,
                            "loc": {
                              "start": {
                                "line": 479,
                                "column": 8
                              },
                              "end": {
                                "line": 479,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 18982,
                              "end": 18986,
                              "loc": {
                                "start": {
                                  "line": 479,
                                  "column": 8
                                },
                                "end": {
                                  "line": 479,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 18987,
                              "end": 19000,
                              "loc": {
                                "start": {
                                  "line": 479,
                                  "column": 13
                                },
                                "end": {
                                  "line": 479,
                                  "column": 26
                                }
                              },
                              "name": "currentSketch"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 19001,
                            "end": 19015,
                            "loc": {
                              "start": {
                                "line": 479,
                                "column": 27
                              },
                              "end": {
                                "line": 479,
                                "column": 41
                              }
                            },
                            "name": "showDimensions"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 19028,
                      "end": 19061,
                      "loc": {
                        "start": {
                          "line": 481,
                          "column": 8
                        },
                        "end": {
                          "line": 481,
                          "column": 41
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 19032,
                          "end": 19060,
                          "loc": {
                            "start": {
                              "line": 481,
                              "column": 12
                            },
                            "end": {
                              "line": 481,
                              "column": 40
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 19032,
                            "end": 19036,
                            "loc": {
                              "start": {
                                "line": 481,
                                "column": 12
                              },
                              "end": {
                                "line": 481,
                                "column": 16
                              }
                            },
                            "name": "item"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 19039,
                            "end": 19060,
                            "loc": {
                              "start": {
                                "line": 481,
                                "column": 19
                              },
                              "end": {
                                "line": 481,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "CallExpression",
                              "start": 19039,
                              "end": 19055,
                              "loc": {
                                "start": {
                                  "line": 481,
                                  "column": 19
                                },
                                "end": {
                                  "line": 481,
                                  "column": 35
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 19039,
                                "end": 19053,
                                "loc": {
                                  "start": {
                                    "line": 481,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 481,
                                    "column": 33
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 19039,
                                  "end": 19045,
                                  "loc": {
                                    "start": {
                                      "line": 481,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 481,
                                      "column": 25
                                    }
                                  },
                                  "name": "sketch"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19046,
                                  "end": 19053,
                                  "loc": {
                                    "start": {
                                      "line": 481,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 481,
                                      "column": 33
                                    }
                                  },
                                  "name": "getPart"
                                },
                                "computed": false
                              },
                              "arguments": []
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 19056,
                              "end": 19060,
                              "loc": {
                                "start": {
                                  "line": 481,
                                  "column": 36
                                },
                                "end": {
                                  "line": 481,
                                  "column": 40
                                }
                              },
                              "name": "item"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 19070,
                      "end": 19314,
                      "loc": {
                        "start": {
                          "line": 482,
                          "column": 8
                        },
                        "end": {
                          "line": 487,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 19074,
                        "end": 19118,
                        "loc": {
                          "start": {
                            "line": 482,
                            "column": 12
                          },
                          "end": {
                            "line": 482,
                            "column": 56
                          }
                        },
                        "left": {
                          "type": "LogicalExpression",
                          "start": 19074,
                          "end": 19096,
                          "loc": {
                            "start": {
                              "line": 482,
                              "column": 12
                            },
                            "end": {
                              "line": 482,
                              "column": 34
                            }
                          },
                          "left": {
                            "type": "Identifier",
                            "start": 19074,
                            "end": 19078,
                            "loc": {
                              "start": {
                                "line": 482,
                                "column": 12
                              },
                              "end": {
                                "line": 482,
                                "column": 16
                              }
                            },
                            "name": "item"
                          },
                          "operator": "&&",
                          "right": {
                            "type": "MemberExpression",
                            "start": 19082,
                            "end": 19096,
                            "loc": {
                              "start": {
                                "line": 482,
                                "column": 20
                              },
                              "end": {
                                "line": 482,
                                "column": 34
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 19082,
                              "end": 19086,
                              "loc": {
                                "start": {
                                  "line": 482,
                                  "column": 20
                                },
                                "end": {
                                  "line": 482,
                                  "column": 24
                                }
                              },
                              "name": "item"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 19087,
                              "end": 19096,
                              "loc": {
                                "start": {
                                  "line": 482,
                                  "column": 25
                                },
                                "end": {
                                  "line": 482,
                                  "column": 34
                                }
                              },
                              "name": "materials"
                            },
                            "computed": false
                          }
                        },
                        "operator": "&&",
                        "right": {
                          "type": "MemberExpression",
                          "start": 19100,
                          "end": 19118,
                          "loc": {
                            "start": {
                              "line": 482,
                              "column": 38
                            },
                            "end": {
                              "line": 482,
                              "column": 56
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 19100,
                            "end": 19114,
                            "loc": {
                              "start": {
                                "line": 482,
                                "column": 38
                              },
                              "end": {
                                "line": 482,
                                "column": 52
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 19100,
                              "end": 19104,
                              "loc": {
                                "start": {
                                  "line": 482,
                                  "column": 38
                                },
                                "end": {
                                  "line": 482,
                                  "column": 42
                                }
                              },
                              "name": "item"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 19105,
                              "end": 19114,
                              "loc": {
                                "start": {
                                  "line": 482,
                                  "column": 43
                                },
                                "end": {
                                  "line": 482,
                                  "column": 52
                                }
                              },
                              "name": "materials"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 19115,
                            "end": 19118,
                            "loc": {
                              "start": {
                                "line": 482,
                                "column": 53
                              },
                              "end": {
                                "line": 482,
                                "column": 56
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 19120,
                        "end": 19314,
                        "loc": {
                          "start": {
                            "line": 482,
                            "column": 58
                          },
                          "end": {
                            "line": 487,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 19134,
                            "end": 19304,
                            "loc": {
                              "start": {
                                "line": 483,
                                "column": 12
                              },
                              "end": {
                                "line": 486,
                                "column": 15
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 19134,
                              "end": 19303,
                              "loc": {
                                "start": {
                                  "line": 483,
                                  "column": 12
                                },
                                "end": {
                                  "line": 486,
                                  "column": 14
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 19134,
                                "end": 19160,
                                "loc": {
                                  "start": {
                                    "line": 483,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 483,
                                    "column": 38
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 19134,
                                  "end": 19152,
                                  "loc": {
                                    "start": {
                                      "line": 483,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 483,
                                      "column": 30
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 19134,
                                    "end": 19148,
                                    "loc": {
                                      "start": {
                                        "line": 483,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 483,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 19134,
                                      "end": 19138,
                                      "loc": {
                                        "start": {
                                          "line": 483,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 483,
                                          "column": 16
                                        }
                                      },
                                      "name": "item"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 19139,
                                      "end": 19148,
                                      "loc": {
                                        "start": {
                                          "line": 483,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 483,
                                          "column": 26
                                        }
                                      },
                                      "name": "materials"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 19149,
                                    "end": 19152,
                                    "loc": {
                                      "start": {
                                        "line": 483,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 483,
                                        "column": 30
                                      }
                                    },
                                    "name": "all"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19153,
                                  "end": 19160,
                                  "loc": {
                                    "start": {
                                      "line": 483,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 483,
                                      "column": 38
                                    }
                                  },
                                  "name": "forEach"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "FunctionExpression",
                                  "start": 19161,
                                  "end": 19302,
                                  "loc": {
                                    "start": {
                                      "line": 483,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 486,
                                      "column": 13
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 19171,
                                      "end": 19179,
                                      "loc": {
                                        "start": {
                                          "line": 483,
                                          "column": 49
                                        },
                                        "end": {
                                          "line": 483,
                                          "column": 57
                                        }
                                      },
                                      "name": "material"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 19181,
                                    "end": 19302,
                                    "loc": {
                                      "start": {
                                        "line": 483,
                                        "column": 59
                                      },
                                      "end": {
                                        "line": 486,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 19199,
                                        "end": 19227,
                                        "loc": {
                                          "start": {
                                            "line": 484,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 484,
                                            "column": 44
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 19199,
                                          "end": 19226,
                                          "loc": {
                                            "start": {
                                              "line": 484,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 484,
                                              "column": 43
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 19199,
                                            "end": 19219,
                                            "loc": {
                                              "start": {
                                                "line": 484,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 484,
                                                "column": 36
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 19199,
                                              "end": 19207,
                                              "loc": {
                                                "start": {
                                                  "line": 484,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 484,
                                                  "column": 24
                                                }
                                              },
                                              "name": "material"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 19208,
                                              "end": 19219,
                                              "loc": {
                                                "start": {
                                                  "line": 484,
                                                  "column": 25
                                                },
                                                "end": {
                                                  "line": 484,
                                                  "column": 36
                                                }
                                              },
                                              "name": "transparent"
                                            },
                                            "computed": false
                                          },
                                          "right": {
                                            "type": "Literal",
                                            "start": 19222,
                                            "end": 19226,
                                            "loc": {
                                              "start": {
                                                "line": 484,
                                                "column": 39
                                              },
                                              "end": {
                                                "line": 484,
                                                "column": 43
                                              }
                                            },
                                            "value": true,
                                            "rawValue": true,
                                            "raw": "true"
                                          }
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 19244,
                                        "end": 19288,
                                        "loc": {
                                          "start": {
                                            "line": 485,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 485,
                                            "column": 60
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 19244,
                                          "end": 19287,
                                          "loc": {
                                            "start": {
                                              "line": 485,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 485,
                                              "column": 59
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 19244,
                                            "end": 19260,
                                            "loc": {
                                              "start": {
                                                "line": 485,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 485,
                                                "column": 32
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 19244,
                                              "end": 19252,
                                              "loc": {
                                                "start": {
                                                  "line": 485,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 485,
                                                  "column": 24
                                                }
                                              },
                                              "name": "material"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 19253,
                                              "end": 19260,
                                              "loc": {
                                                "start": {
                                                  "line": 485,
                                                  "column": 25
                                                },
                                                "end": {
                                                  "line": 485,
                                                  "column": 32
                                                }
                                              },
                                              "name": "opacity"
                                            },
                                            "computed": false
                                          },
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 19263,
                                            "end": 19287,
                                            "loc": {
                                              "start": {
                                                "line": 485,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 485,
                                                "column": 59
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 19263,
                                              "end": 19269,
                                              "loc": {
                                                "start": {
                                                  "line": 485,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 485,
                                                  "column": 41
                                                }
                                              },
                                              "name": "sketch"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 19270,
                                              "end": 19287,
                                              "loc": {
                                                "start": {
                                                  "line": 485,
                                                  "column": 42
                                                },
                                                "end": {
                                                  "line": 485,
                                                  "column": 59
                                                }
                                              },
                                              "name": "chosenItemOpacity"
                                            },
                                            "computed": false
                                          }
                                        }
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 19323,
                      "end": 19335,
                      "loc": {
                        "start": {
                          "line": 488,
                          "column": 8
                        },
                        "end": {
                          "line": 488,
                          "column": 20
                        }
                      },
                      "argument": {
                        "type": "Literal",
                        "start": 19330,
                        "end": 19334,
                        "loc": {
                          "start": {
                            "line": 488,
                            "column": 15
                          },
                          "end": {
                            "line": 488,
                            "column": 19
                          }
                        },
                        "value": true,
                        "rawValue": true,
                        "raw": "true"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 19347,
              "end": 20609,
              "loc": {
                "start": {
                  "line": 491,
                  "column": 4
                },
                "end": {
                  "line": 530,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 19353,
                "end": 19367,
                "loc": {
                  "start": {
                    "line": 491,
                    "column": 10
                  },
                  "end": {
                    "line": 491,
                    "column": 24
                  }
                },
                "name": "deselectSketch"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 19367,
                "end": 20609,
                "loc": {
                  "start": {
                    "line": 491,
                    "column": 24
                  },
                  "end": {
                    "line": 530,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 19368,
                    "end": 19375,
                    "loc": {
                      "start": {
                        "line": 491,
                        "column": 25
                      },
                      "end": {
                        "line": 491,
                        "column": 32
                      }
                    },
                    "name": "options"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 19377,
                  "end": 20609,
                  "loc": {
                    "start": {
                      "line": 491,
                      "column": 34
                    },
                    "end": {
                      "line": 530,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 19387,
                      "end": 19444,
                      "loc": {
                        "start": {
                          "line": 492,
                          "column": 8
                        },
                        "end": {
                          "line": 493,
                          "column": 24
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 19391,
                        "end": 19418,
                        "loc": {
                          "start": {
                            "line": 492,
                            "column": 12
                          },
                          "end": {
                            "line": 492,
                            "column": 39
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 19391,
                          "end": 19409,
                          "loc": {
                            "start": {
                              "line": 492,
                              "column": 12
                            },
                            "end": {
                              "line": 492,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 19391,
                            "end": 19395,
                            "loc": {
                              "start": {
                                "line": 492,
                                "column": 12
                              },
                              "end": {
                                "line": 492,
                                "column": 16
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 19396,
                            "end": 19409,
                            "loc": {
                              "start": {
                                "line": 492,
                                "column": 17
                              },
                              "end": {
                                "line": 492,
                                "column": 30
                              }
                            },
                            "name": "currentSketch"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Literal",
                          "start": 19414,
                          "end": 19418,
                          "loc": {
                            "start": {
                              "line": 492,
                              "column": 35
                            },
                            "end": {
                              "line": 492,
                              "column": 39
                            }
                          },
                          "value": null,
                          "rawValue": null,
                          "raw": "null"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 19432,
                        "end": 19444,
                        "loc": {
                          "start": {
                            "line": 493,
                            "column": 12
                          },
                          "end": {
                            "line": 493,
                            "column": 24
                          }
                        },
                        "argument": {
                          "type": "Literal",
                          "start": 19439,
                          "end": 19443,
                          "loc": {
                            "start": {
                              "line": 493,
                              "column": 19
                            },
                            "end": {
                              "line": 493,
                              "column": 23
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 19454,
                      "end": 19499,
                      "loc": {
                        "start": {
                          "line": 495,
                          "column": 8
                        },
                        "end": {
                          "line": 495,
                          "column": 53
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 19458,
                          "end": 19498,
                          "loc": {
                            "start": {
                              "line": 495,
                              "column": 12
                            },
                            "end": {
                              "line": 495,
                              "column": 52
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 19458,
                            "end": 19462,
                            "loc": {
                              "start": {
                                "line": 495,
                                "column": 12
                              },
                              "end": {
                                "line": 495,
                                "column": 16
                              }
                            },
                            "name": "item"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 19465,
                            "end": 19498,
                            "loc": {
                              "start": {
                                "line": 495,
                                "column": 19
                              },
                              "end": {
                                "line": 495,
                                "column": 52
                              }
                            },
                            "object": {
                              "type": "CallExpression",
                              "start": 19465,
                              "end": 19493,
                              "loc": {
                                "start": {
                                  "line": 495,
                                  "column": 19
                                },
                                "end": {
                                  "line": 495,
                                  "column": 47
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 19465,
                                "end": 19491,
                                "loc": {
                                  "start": {
                                    "line": 495,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 495,
                                    "column": 45
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 19465,
                                  "end": 19483,
                                  "loc": {
                                    "start": {
                                      "line": 495,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 495,
                                      "column": 37
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 19465,
                                    "end": 19469,
                                    "loc": {
                                      "start": {
                                        "line": 495,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 495,
                                        "column": 23
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 19470,
                                    "end": 19483,
                                    "loc": {
                                      "start": {
                                        "line": 495,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 495,
                                        "column": 37
                                      }
                                    },
                                    "name": "currentSketch"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19484,
                                  "end": 19491,
                                  "loc": {
                                    "start": {
                                      "line": 495,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 495,
                                      "column": 45
                                    }
                                  },
                                  "name": "getPart"
                                },
                                "computed": false
                              },
                              "arguments": []
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 19494,
                              "end": 19498,
                              "loc": {
                                "start": {
                                  "line": 495,
                                  "column": 48
                                },
                                "end": {
                                  "line": 495,
                                  "column": 52
                                }
                              },
                              "name": "item"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 19508,
                      "end": 19730,
                      "loc": {
                        "start": {
                          "line": 496,
                          "column": 8
                        },
                        "end": {
                          "line": 501,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 19512,
                        "end": 19556,
                        "loc": {
                          "start": {
                            "line": 496,
                            "column": 12
                          },
                          "end": {
                            "line": 496,
                            "column": 56
                          }
                        },
                        "left": {
                          "type": "LogicalExpression",
                          "start": 19512,
                          "end": 19534,
                          "loc": {
                            "start": {
                              "line": 496,
                              "column": 12
                            },
                            "end": {
                              "line": 496,
                              "column": 34
                            }
                          },
                          "left": {
                            "type": "Identifier",
                            "start": 19512,
                            "end": 19516,
                            "loc": {
                              "start": {
                                "line": 496,
                                "column": 12
                              },
                              "end": {
                                "line": 496,
                                "column": 16
                              }
                            },
                            "name": "item"
                          },
                          "operator": "&&",
                          "right": {
                            "type": "MemberExpression",
                            "start": 19520,
                            "end": 19534,
                            "loc": {
                              "start": {
                                "line": 496,
                                "column": 20
                              },
                              "end": {
                                "line": 496,
                                "column": 34
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 19520,
                              "end": 19524,
                              "loc": {
                                "start": {
                                  "line": 496,
                                  "column": 20
                                },
                                "end": {
                                  "line": 496,
                                  "column": 24
                                }
                              },
                              "name": "item"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 19525,
                              "end": 19534,
                              "loc": {
                                "start": {
                                  "line": 496,
                                  "column": 25
                                },
                                "end": {
                                  "line": 496,
                                  "column": 34
                                }
                              },
                              "name": "materials"
                            },
                            "computed": false
                          }
                        },
                        "operator": "&&",
                        "right": {
                          "type": "MemberExpression",
                          "start": 19538,
                          "end": 19556,
                          "loc": {
                            "start": {
                              "line": 496,
                              "column": 38
                            },
                            "end": {
                              "line": 496,
                              "column": 56
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 19538,
                            "end": 19552,
                            "loc": {
                              "start": {
                                "line": 496,
                                "column": 38
                              },
                              "end": {
                                "line": 496,
                                "column": 52
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 19538,
                              "end": 19542,
                              "loc": {
                                "start": {
                                  "line": 496,
                                  "column": 38
                                },
                                "end": {
                                  "line": 496,
                                  "column": 42
                                }
                              },
                              "name": "item"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 19543,
                              "end": 19552,
                              "loc": {
                                "start": {
                                  "line": 496,
                                  "column": 43
                                },
                                "end": {
                                  "line": 496,
                                  "column": 52
                                }
                              },
                              "name": "materials"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 19553,
                            "end": 19556,
                            "loc": {
                              "start": {
                                "line": 496,
                                "column": 53
                              },
                              "end": {
                                "line": 496,
                                "column": 56
                              }
                            },
                            "name": "all"
                          },
                          "computed": false
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 19558,
                        "end": 19730,
                        "loc": {
                          "start": {
                            "line": 496,
                            "column": 58
                          },
                          "end": {
                            "line": 501,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 19572,
                            "end": 19720,
                            "loc": {
                              "start": {
                                "line": 497,
                                "column": 12
                              },
                              "end": {
                                "line": 500,
                                "column": 15
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 19572,
                              "end": 19719,
                              "loc": {
                                "start": {
                                  "line": 497,
                                  "column": 12
                                },
                                "end": {
                                  "line": 500,
                                  "column": 14
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 19572,
                                "end": 19598,
                                "loc": {
                                  "start": {
                                    "line": 497,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 497,
                                    "column": 38
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 19572,
                                  "end": 19590,
                                  "loc": {
                                    "start": {
                                      "line": 497,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 497,
                                      "column": 30
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 19572,
                                    "end": 19586,
                                    "loc": {
                                      "start": {
                                        "line": 497,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 497,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 19572,
                                      "end": 19576,
                                      "loc": {
                                        "start": {
                                          "line": 497,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 497,
                                          "column": 16
                                        }
                                      },
                                      "name": "item"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 19577,
                                      "end": 19586,
                                      "loc": {
                                        "start": {
                                          "line": 497,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 497,
                                          "column": 26
                                        }
                                      },
                                      "name": "materials"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 19587,
                                    "end": 19590,
                                    "loc": {
                                      "start": {
                                        "line": 497,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 497,
                                        "column": 30
                                      }
                                    },
                                    "name": "all"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19591,
                                  "end": 19598,
                                  "loc": {
                                    "start": {
                                      "line": 497,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 497,
                                      "column": 38
                                    }
                                  },
                                  "name": "forEach"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "FunctionExpression",
                                  "start": 19599,
                                  "end": 19718,
                                  "loc": {
                                    "start": {
                                      "line": 497,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 500,
                                      "column": 13
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 19609,
                                      "end": 19617,
                                      "loc": {
                                        "start": {
                                          "line": 497,
                                          "column": 49
                                        },
                                        "end": {
                                          "line": 497,
                                          "column": 57
                                        }
                                      },
                                      "name": "material"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 19619,
                                    "end": 19718,
                                    "loc": {
                                      "start": {
                                        "line": 497,
                                        "column": 59
                                      },
                                      "end": {
                                        "line": 500,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 19637,
                                        "end": 19658,
                                        "loc": {
                                          "start": {
                                            "line": 498,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 498,
                                            "column": 37
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 19637,
                                          "end": 19657,
                                          "loc": {
                                            "start": {
                                              "line": 498,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 498,
                                              "column": 36
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 19637,
                                            "end": 19653,
                                            "loc": {
                                              "start": {
                                                "line": 498,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 498,
                                                "column": 32
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 19637,
                                              "end": 19645,
                                              "loc": {
                                                "start": {
                                                  "line": 498,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 498,
                                                  "column": 24
                                                }
                                              },
                                              "name": "material"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 19646,
                                              "end": 19653,
                                              "loc": {
                                                "start": {
                                                  "line": 498,
                                                  "column": 25
                                                },
                                                "end": {
                                                  "line": 498,
                                                  "column": 32
                                                }
                                              },
                                              "name": "opacity"
                                            },
                                            "computed": false
                                          },
                                          "right": {
                                            "type": "Literal",
                                            "start": 19656,
                                            "end": 19657,
                                            "loc": {
                                              "start": {
                                                "line": 498,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 498,
                                                "column": 36
                                              }
                                            },
                                            "value": 1,
                                            "rawValue": 1,
                                            "raw": "1"
                                          }
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 19675,
                                        "end": 19704,
                                        "loc": {
                                          "start": {
                                            "line": 499,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 499,
                                            "column": 45
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 19675,
                                          "end": 19703,
                                          "loc": {
                                            "start": {
                                              "line": 499,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 499,
                                              "column": 44
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 19675,
                                            "end": 19695,
                                            "loc": {
                                              "start": {
                                                "line": 499,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 499,
                                                "column": 36
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 19675,
                                              "end": 19683,
                                              "loc": {
                                                "start": {
                                                  "line": 499,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 499,
                                                  "column": 24
                                                }
                                              },
                                              "name": "material"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 19684,
                                              "end": 19695,
                                              "loc": {
                                                "start": {
                                                  "line": 499,
                                                  "column": 25
                                                },
                                                "end": {
                                                  "line": 499,
                                                  "column": 36
                                                }
                                              },
                                              "name": "transparent"
                                            },
                                            "computed": false
                                          },
                                          "right": {
                                            "type": "Literal",
                                            "start": 19698,
                                            "end": 19703,
                                            "loc": {
                                              "start": {
                                                "line": 499,
                                                "column": 39
                                              },
                                              "end": {
                                                "line": 499,
                                                "column": 44
                                              }
                                            },
                                            "value": false,
                                            "rawValue": false,
                                            "raw": "false"
                                          }
                                        }
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 19739,
                      "end": 19789,
                      "loc": {
                        "start": {
                          "line": 502,
                          "column": 8
                        },
                        "end": {
                          "line": 502,
                          "column": 58
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 19739,
                        "end": 19788,
                        "loc": {
                          "start": {
                            "line": 502,
                            "column": 8
                          },
                          "end": {
                            "line": 502,
                            "column": 57
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 19739,
                          "end": 19781,
                          "loc": {
                            "start": {
                              "line": 502,
                              "column": 8
                            },
                            "end": {
                              "line": 502,
                              "column": 50
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 19739,
                            "end": 19756,
                            "loc": {
                              "start": {
                                "line": 502,
                                "column": 8
                              },
                              "end": {
                                "line": 502,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 19739,
                              "end": 19743,
                              "loc": {
                                "start": {
                                  "line": 502,
                                  "column": 8
                                },
                                "end": {
                                  "line": 502,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 19744,
                              "end": 19756,
                              "loc": {
                                "start": {
                                  "line": 502,
                                  "column": 13
                                },
                                "end": {
                                  "line": 502,
                                  "column": 25
                                }
                              },
                              "name": "__parentView"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 19757,
                            "end": 19781,
                            "loc": {
                              "start": {
                                "line": 502,
                                "column": 26
                              },
                              "end": {
                                "line": 502,
                                "column": 50
                              }
                            },
                            "name": "callbackAfterRenderScene"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 19784,
                          "end": 19788,
                          "loc": {
                            "start": {
                              "line": 502,
                              "column": 53
                            },
                            "end": {
                              "line": 502,
                              "column": 57
                            }
                          },
                          "value": null,
                          "rawValue": null,
                          "raw": "null"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 19799,
                      "end": 19860,
                      "loc": {
                        "start": {
                          "line": 504,
                          "column": 8
                        },
                        "end": {
                          "line": 504,
                          "column": 69
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 19799,
                        "end": 19859,
                        "loc": {
                          "start": {
                            "line": 504,
                            "column": 8
                          },
                          "end": {
                            "line": 504,
                            "column": 68
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 19799,
                          "end": 19835,
                          "loc": {
                            "start": {
                              "line": 504,
                              "column": 8
                            },
                            "end": {
                              "line": 504,
                              "column": 44
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 19799,
                            "end": 19825,
                            "loc": {
                              "start": {
                                "line": 504,
                                "column": 8
                              },
                              "end": {
                                "line": 504,
                                "column": 34
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 19799,
                              "end": 19816,
                              "loc": {
                                "start": {
                                  "line": 504,
                                  "column": 8
                                },
                                "end": {
                                  "line": 504,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 19799,
                                "end": 19803,
                                "loc": {
                                  "start": {
                                    "line": 504,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 504,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19804,
                                "end": 19816,
                                "loc": {
                                  "start": {
                                    "line": 504,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 504,
                                    "column": 25
                                  }
                                },
                                "name": "__parentView"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 19817,
                              "end": 19825,
                              "loc": {
                                "start": {
                                  "line": 504,
                                  "column": 26
                                },
                                "end": {
                                  "line": 504,
                                  "column": 34
                                }
                              },
                              "name": "controls"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 19826,
                            "end": 19835,
                            "loc": {
                              "start": {
                                "line": 504,
                                "column": 35
                              },
                              "end": {
                                "line": 504,
                                "column": 44
                              }
                            },
                            "name": "zoomState"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 19838,
                          "end": 19859,
                          "loc": {
                            "start": {
                              "line": 504,
                              "column": 47
                            },
                            "end": {
                              "line": 504,
                              "column": 68
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 19838,
                            "end": 19852,
                            "loc": {
                              "start": {
                                "line": 504,
                                "column": 47
                              },
                              "end": {
                                "line": 504,
                                "column": 61
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 19838,
                              "end": 19843,
                              "loc": {
                                "start": {
                                  "line": 504,
                                  "column": 47
                                },
                                "end": {
                                  "line": 504,
                                  "column": 52
                                }
                              },
                              "name": "Orbit"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 19844,
                              "end": 19852,
                              "loc": {
                                "start": {
                                  "line": 504,
                                  "column": 53
                                },
                                "end": {
                                  "line": 504,
                                  "column": 61
                                }
                              },
                              "name": "ZoomMode"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 19853,
                            "end": 19859,
                            "loc": {
                              "start": {
                                "line": 504,
                                "column": 62
                              },
                              "end": {
                                "line": 504,
                                "column": 68
                              }
                            },
                            "name": "Center"
                          },
                          "computed": false
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "this.switchToPerspectiveCamera(this.__parentView);",
                          "start": 19869,
                          "end": 19921,
                          "loc": {
                            "start": {
                              "line": 505,
                              "column": 8
                            },
                            "end": {
                              "line": 505,
                              "column": 60
                            }
                          },
                          "range": [
                            19869,
                            19921
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 19930,
                      "end": 19958,
                      "loc": {
                        "start": {
                          "line": 506,
                          "column": 8
                        },
                        "end": {
                          "line": 506,
                          "column": 36
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 19930,
                        "end": 19957,
                        "loc": {
                          "start": {
                            "line": 506,
                            "column": 8
                          },
                          "end": {
                            "line": 506,
                            "column": 35
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 19936,
                          "end": 19957,
                          "loc": {
                            "start": {
                              "line": 506,
                              "column": 14
                            },
                            "end": {
                              "line": 506,
                              "column": 35
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 19936,
                            "end": 19951,
                            "loc": {
                              "start": {
                                "line": 506,
                                "column": 14
                              },
                              "end": {
                                "line": 506,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 19936,
                              "end": 19940,
                              "loc": {
                                "start": {
                                  "line": 506,
                                  "column": 14
                                },
                                "end": {
                                  "line": 506,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 19941,
                              "end": 19951,
                              "loc": {
                                "start": {
                                  "line": 506,
                                  "column": 19
                                },
                                "end": {
                                  "line": 506,
                                  "column": 29
                                }
                              },
                              "name": "chooseTool"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "start": 19952,
                              "end": 19956,
                              "loc": {
                                "start": {
                                  "line": 506,
                                  "column": 30
                                },
                                "end": {
                                  "line": 506,
                                  "column": 34
                                }
                              },
                              "value": null,
                              "rawValue": null,
                              "raw": "null"
                            }
                          ]
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "this.switchToPerspectiveCamera(this.__parentView);",
                          "start": 19869,
                          "end": 19921,
                          "loc": {
                            "start": {
                              "line": 505,
                              "column": 8
                            },
                            "end": {
                              "line": 505,
                              "column": 60
                            }
                          },
                          "range": [
                            19869,
                            19921
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 19968,
                      "end": 19998,
                      "loc": {
                        "start": {
                          "line": 508,
                          "column": 8
                        },
                        "end": {
                          "line": 508,
                          "column": 38
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 19968,
                        "end": 19997,
                        "loc": {
                          "start": {
                            "line": 508,
                            "column": 8
                          },
                          "end": {
                            "line": 508,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 19968,
                          "end": 19995,
                          "loc": {
                            "start": {
                              "line": 508,
                              "column": 8
                            },
                            "end": {
                              "line": 508,
                              "column": 35
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 19968,
                            "end": 19986,
                            "loc": {
                              "start": {
                                "line": 508,
                                "column": 8
                              },
                              "end": {
                                "line": 508,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 19968,
                              "end": 19972,
                              "loc": {
                                "start": {
                                  "line": 508,
                                  "column": 8
                                },
                                "end": {
                                  "line": 508,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 19973,
                              "end": 19986,
                              "loc": {
                                "start": {
                                  "line": 508,
                                  "column": 13
                                },
                                "end": {
                                  "line": 508,
                                  "column": 26
                                }
                              },
                              "name": "currentSketch"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 19987,
                            "end": 19995,
                            "loc": {
                              "start": {
                                "line": 508,
                                "column": 27
                              },
                              "end": {
                                "line": 508,
                                "column": 35
                              }
                            },
                            "name": "hideGrid"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 20007,
                      "end": 20043,
                      "loc": {
                        "start": {
                          "line": 509,
                          "column": 8
                        },
                        "end": {
                          "line": 509,
                          "column": 44
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 20007,
                        "end": 20042,
                        "loc": {
                          "start": {
                            "line": 509,
                            "column": 8
                          },
                          "end": {
                            "line": 509,
                            "column": 43
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 20007,
                          "end": 20040,
                          "loc": {
                            "start": {
                              "line": 509,
                              "column": 8
                            },
                            "end": {
                              "line": 509,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 20007,
                            "end": 20025,
                            "loc": {
                              "start": {
                                "line": 509,
                                "column": 8
                              },
                              "end": {
                                "line": 509,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 20007,
                              "end": 20011,
                              "loc": {
                                "start": {
                                  "line": 509,
                                  "column": 8
                                },
                                "end": {
                                  "line": 509,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 20012,
                              "end": 20025,
                              "loc": {
                                "start": {
                                  "line": 509,
                                  "column": 13
                                },
                                "end": {
                                  "line": 509,
                                  "column": 26
                                }
                              },
                              "name": "currentSketch"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20026,
                            "end": 20040,
                            "loc": {
                              "start": {
                                "line": 509,
                                "column": 27
                              },
                              "end": {
                                "line": 509,
                                "column": 41
                              }
                            },
                            "name": "hideDimensions"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 20052,
                      "end": 20089,
                      "loc": {
                        "start": {
                          "line": 510,
                          "column": 8
                        },
                        "end": {
                          "line": 510,
                          "column": 45
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 20052,
                        "end": 20088,
                        "loc": {
                          "start": {
                            "line": 510,
                            "column": 8
                          },
                          "end": {
                            "line": 510,
                            "column": 44
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 20052,
                          "end": 20086,
                          "loc": {
                            "start": {
                              "line": 510,
                              "column": 8
                            },
                            "end": {
                              "line": 510,
                              "column": 42
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 20052,
                            "end": 20070,
                            "loc": {
                              "start": {
                                "line": 510,
                                "column": 8
                              },
                              "end": {
                                "line": 510,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 20052,
                              "end": 20056,
                              "loc": {
                                "start": {
                                  "line": 510,
                                  "column": 8
                                },
                                "end": {
                                  "line": 510,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 20057,
                              "end": 20070,
                              "loc": {
                                "start": {
                                  "line": 510,
                                  "column": 13
                                },
                                "end": {
                                  "line": 510,
                                  "column": 26
                                }
                              },
                              "name": "currentSketch"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20071,
                            "end": 20086,
                            "loc": {
                              "start": {
                                "line": 510,
                                "column": 27
                              },
                              "end": {
                                "line": 510,
                                "column": 42
                              }
                            },
                            "name": "hideConstraints"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 20099,
                      "end": 20131,
                      "loc": {
                        "start": {
                          "line": 512,
                          "column": 8
                        },
                        "end": {
                          "line": 512,
                          "column": 40
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 20103,
                          "end": 20130,
                          "loc": {
                            "start": {
                              "line": 512,
                              "column": 12
                            },
                            "end": {
                              "line": 512,
                              "column": 39
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 20103,
                            "end": 20109,
                            "loc": {
                              "start": {
                                "line": 512,
                                "column": 12
                              },
                              "end": {
                                "line": 512,
                                "column": 18
                              }
                            },
                            "name": "sketch"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 20112,
                            "end": 20130,
                            "loc": {
                              "start": {
                                "line": 512,
                                "column": 21
                              },
                              "end": {
                                "line": 512,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 20112,
                              "end": 20116,
                              "loc": {
                                "start": {
                                  "line": 512,
                                  "column": 21
                                },
                                "end": {
                                  "line": 512,
                                  "column": 25
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 20117,
                              "end": 20130,
                              "loc": {
                                "start": {
                                  "line": 512,
                                  "column": 26
                                },
                                "end": {
                                  "line": 512,
                                  "column": 39
                                }
                              },
                              "name": "currentSketch"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 20140,
                      "end": 20164,
                      "loc": {
                        "start": {
                          "line": 513,
                          "column": 8
                        },
                        "end": {
                          "line": 513,
                          "column": 32
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 20140,
                        "end": 20163,
                        "loc": {
                          "start": {
                            "line": 513,
                            "column": 8
                          },
                          "end": {
                            "line": 513,
                            "column": 31
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 20140,
                          "end": 20147,
                          "loc": {
                            "start": {
                              "line": 513,
                              "column": 8
                            },
                            "end": {
                              "line": 513,
                              "column": 15
                            }
                          },
                          "name": "options"
                        },
                        "right": {
                          "type": "LogicalExpression",
                          "start": 20150,
                          "end": 20163,
                          "loc": {
                            "start": {
                              "line": 513,
                              "column": 18
                            },
                            "end": {
                              "line": 513,
                              "column": 31
                            }
                          },
                          "left": {
                            "type": "Identifier",
                            "start": 20150,
                            "end": 20157,
                            "loc": {
                              "start": {
                                "line": 513,
                                "column": 18
                              },
                              "end": {
                                "line": 513,
                                "column": 25
                              }
                            },
                            "name": "options"
                          },
                          "operator": "||",
                          "right": {
                            "type": "ObjectExpression",
                            "start": 20161,
                            "end": 20163,
                            "loc": {
                              "start": {
                                "line": 513,
                                "column": 29
                              },
                              "end": {
                                "line": 513,
                                "column": 31
                              }
                            },
                            "properties": []
                          }
                        }
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 20173,
                      "end": 20333,
                      "loc": {
                        "start": {
                          "line": 514,
                          "column": 8
                        },
                        "end": {
                          "line": 517,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 20177,
                        "end": 20201,
                        "loc": {
                          "start": {
                            "line": 514,
                            "column": 12
                          },
                          "end": {
                            "line": 514,
                            "column": 36
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "MemberExpression",
                          "start": 20178,
                          "end": 20201,
                          "loc": {
                            "start": {
                              "line": 514,
                              "column": 13
                            },
                            "end": {
                              "line": 514,
                              "column": 36
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 20178,
                            "end": 20185,
                            "loc": {
                              "start": {
                                "line": 514,
                                "column": 13
                              },
                              "end": {
                                "line": 514,
                                "column": 20
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20186,
                            "end": 20201,
                            "loc": {
                              "start": {
                                "line": 514,
                                "column": 21
                              },
                              "end": {
                                "line": 514,
                                "column": 36
                              }
                            },
                            "name": "skipServerCalls"
                          },
                          "computed": false
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 20203,
                        "end": 20333,
                        "loc": {
                          "start": {
                            "line": 514,
                            "column": 38
                          },
                          "end": {
                            "line": 517,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 20217,
                            "end": 20267,
                            "loc": {
                              "start": {
                                "line": 515,
                                "column": 12
                              },
                              "end": {
                                "line": 515,
                                "column": 62
                              }
                            },
                            "expression": {
                              "type": "AwaitExpression",
                              "start": 20217,
                              "end": 20266,
                              "loc": {
                                "start": {
                                  "line": 515,
                                  "column": 12
                                },
                                "end": {
                                  "line": 515,
                                  "column": 61
                                }
                              },
                              "all": false,
                              "argument": {
                                "type": "CallExpression",
                                "start": 20223,
                                "end": 20266,
                                "loc": {
                                  "start": {
                                    "line": 515,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 515,
                                    "column": 61
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 20223,
                                  "end": 20253,
                                  "loc": {
                                    "start": {
                                      "line": 515,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 515,
                                      "column": 48
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 20223,
                                    "end": 20245,
                                    "loc": {
                                      "start": {
                                        "line": 515,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 515,
                                        "column": 40
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 20223,
                                      "end": 20237,
                                      "loc": {
                                        "start": {
                                          "line": 515,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 515,
                                          "column": 32
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 20223,
                                        "end": 20230,
                                        "loc": {
                                          "start": {
                                            "line": 515,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 515,
                                            "column": 25
                                          }
                                        },
                                        "name": "Interop"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 20231,
                                        "end": 20237,
                                        "loc": {
                                          "start": {
                                            "line": 515,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 515,
                                            "column": 32
                                          }
                                        },
                                        "name": "Recalc"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 20238,
                                        "end": 20244,
                                        "loc": {
                                          "start": {
                                            "line": 515,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 515,
                                            "column": 39
                                          }
                                        },
                                        "name": "sketch"
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20246,
                                    "end": 20253,
                                    "loc": {
                                      "start": {
                                        "line": 515,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 515,
                                        "column": 48
                                      }
                                    },
                                    "name": "execute"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "start": 20254,
                                    "end": 20265,
                                    "loc": {
                                      "start": {
                                        "line": 515,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 515,
                                        "column": 60
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 20254,
                                      "end": 20258,
                                      "loc": {
                                        "start": {
                                          "line": 515,
                                          "column": 49
                                        },
                                        "end": {
                                          "line": 515,
                                          "column": 53
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20259,
                                      "end": 20265,
                                      "loc": {
                                        "start": {
                                          "line": 515,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 515,
                                          "column": 60
                                        }
                                      },
                                      "name": "server"
                                    },
                                    "computed": false
                                  }
                                ]
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 20280,
                            "end": 20323,
                            "loc": {
                              "start": {
                                "line": 516,
                                "column": 12
                              },
                              "end": {
                                "line": 516,
                                "column": 55
                              }
                            },
                            "expression": {
                              "type": "AwaitExpression",
                              "start": 20280,
                              "end": 20322,
                              "loc": {
                                "start": {
                                  "line": 516,
                                  "column": 12
                                },
                                "end": {
                                  "line": 516,
                                  "column": 54
                                }
                              },
                              "all": false,
                              "argument": {
                                "type": "CallExpression",
                                "start": 20286,
                                "end": 20322,
                                "loc": {
                                  "start": {
                                    "line": 516,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 516,
                                    "column": 54
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 20286,
                                  "end": 20309,
                                  "loc": {
                                    "start": {
                                      "line": 516,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 516,
                                      "column": 41
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 20286,
                                    "end": 20292,
                                    "loc": {
                                      "start": {
                                        "line": 516,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 516,
                                        "column": 24
                                      }
                                    },
                                    "name": "sketch"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20293,
                                    "end": 20309,
                                    "loc": {
                                      "start": {
                                        "line": 516,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 516,
                                        "column": 41
                                      }
                                    },
                                    "name": "updateFromServer"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "start": 20310,
                                    "end": 20321,
                                    "loc": {
                                      "start": {
                                        "line": 516,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 516,
                                        "column": 53
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 20310,
                                      "end": 20314,
                                      "loc": {
                                        "start": {
                                          "line": 516,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 516,
                                          "column": 46
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20315,
                                      "end": 20321,
                                      "loc": {
                                        "start": {
                                          "line": 516,
                                          "column": 47
                                        },
                                        "end": {
                                          "line": 516,
                                          "column": 53
                                        }
                                      },
                                      "name": "server"
                                    },
                                    "computed": false
                                  }
                                ]
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 20343,
                      "end": 20374,
                      "loc": {
                        "start": {
                          "line": 519,
                          "column": 8
                        },
                        "end": {
                          "line": 519,
                          "column": 39
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 20343,
                        "end": 20373,
                        "loc": {
                          "start": {
                            "line": 519,
                            "column": 8
                          },
                          "end": {
                            "line": 519,
                            "column": 38
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 20343,
                          "end": 20371,
                          "loc": {
                            "start": {
                              "line": 519,
                              "column": 8
                            },
                            "end": {
                              "line": 519,
                              "column": 36
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 20343,
                            "end": 20361,
                            "loc": {
                              "start": {
                                "line": 519,
                                "column": 8
                              },
                              "end": {
                                "line": 519,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 20343,
                              "end": 20347,
                              "loc": {
                                "start": {
                                  "line": 519,
                                  "column": 8
                                },
                                "end": {
                                  "line": 519,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 20348,
                              "end": 20361,
                              "loc": {
                                "start": {
                                  "line": 519,
                                  "column": 13
                                },
                                "end": {
                                  "line": 519,
                                  "column": 26
                                }
                              },
                              "name": "currentSketch"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20362,
                            "end": 20371,
                            "loc": {
                              "start": {
                                "line": 519,
                                "column": 27
                              },
                              "end": {
                                "line": 519,
                                "column": 36
                              }
                            },
                            "name": "updateBox"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 20384,
                      "end": 20428,
                      "loc": {
                        "start": {
                          "line": 521,
                          "column": 8
                        },
                        "end": {
                          "line": 521,
                          "column": 52
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 20384,
                        "end": 20427,
                        "loc": {
                          "start": {
                            "line": 521,
                            "column": 8
                          },
                          "end": {
                            "line": 521,
                            "column": 51
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 20384,
                          "end": 20419,
                          "loc": {
                            "start": {
                              "line": 521,
                              "column": 8
                            },
                            "end": {
                              "line": 521,
                              "column": 43
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 20384,
                            "end": 20410,
                            "loc": {
                              "start": {
                                "line": 521,
                                "column": 8
                              },
                              "end": {
                                "line": 521,
                                "column": 34
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 20384,
                              "end": 20401,
                              "loc": {
                                "start": {
                                  "line": 521,
                                  "column": 8
                                },
                                "end": {
                                  "line": 521,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 20384,
                                "end": 20388,
                                "loc": {
                                  "start": {
                                    "line": 521,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 521,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 20389,
                                "end": 20401,
                                "loc": {
                                  "start": {
                                    "line": 521,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 521,
                                    "column": 25
                                  }
                                },
                                "name": "__parentView"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 20402,
                              "end": 20410,
                              "loc": {
                                "start": {
                                  "line": 521,
                                  "column": 26
                                },
                                "end": {
                                  "line": 521,
                                  "column": 34
                                }
                              },
                              "name": "controls"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20411,
                            "end": 20419,
                            "loc": {
                              "start": {
                                "line": 521,
                                "column": 35
                              },
                              "end": {
                                "line": 521,
                                "column": 43
                              }
                            },
                            "name": "noRotate"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 20422,
                          "end": 20427,
                          "loc": {
                            "start": {
                              "line": 521,
                              "column": 46
                            },
                            "end": {
                              "line": 521,
                              "column": 51
                            }
                          },
                          "value": false,
                          "rawValue": false,
                          "raw": "false"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 20438,
                      "end": 20464,
                      "loc": {
                        "start": {
                          "line": 523,
                          "column": 8
                        },
                        "end": {
                          "line": 523,
                          "column": 34
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 20438,
                        "end": 20463,
                        "loc": {
                          "start": {
                            "line": 523,
                            "column": 8
                          },
                          "end": {
                            "line": 523,
                            "column": 33
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 20438,
                          "end": 20456,
                          "loc": {
                            "start": {
                              "line": 523,
                              "column": 8
                            },
                            "end": {
                              "line": 523,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 20438,
                            "end": 20442,
                            "loc": {
                              "start": {
                                "line": 523,
                                "column": 8
                              },
                              "end": {
                                "line": 523,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20443,
                            "end": 20456,
                            "loc": {
                              "start": {
                                "line": 523,
                                "column": 13
                              },
                              "end": {
                                "line": 523,
                                "column": 26
                              }
                            },
                            "name": "currentSketch"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 20459,
                          "end": 20463,
                          "loc": {
                            "start": {
                              "line": 523,
                              "column": 29
                            },
                            "end": {
                              "line": 523,
                              "column": 33
                            }
                          },
                          "value": null,
                          "rawValue": null,
                          "raw": "null"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 20473,
                      "end": 20513,
                      "loc": {
                        "start": {
                          "line": 524,
                          "column": 8
                        },
                        "end": {
                          "line": 524,
                          "column": 48
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 20473,
                        "end": 20512,
                        "loc": {
                          "start": {
                            "line": 524,
                            "column": 8
                          },
                          "end": {
                            "line": 524,
                            "column": 47
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 20473,
                          "end": 20504,
                          "loc": {
                            "start": {
                              "line": 524,
                              "column": 8
                            },
                            "end": {
                              "line": 524,
                              "column": 39
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 20473,
                            "end": 20487,
                            "loc": {
                              "start": {
                                "line": 524,
                                "column": 8
                              },
                              "end": {
                                "line": 524,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 20473,
                              "end": 20477,
                              "loc": {
                                "start": {
                                  "line": 524,
                                  "column": 8
                                },
                                "end": {
                                  "line": 524,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 20478,
                              "end": 20487,
                              "loc": {
                                "start": {
                                  "line": 524,
                                  "column": 13
                                },
                                "end": {
                                  "line": 524,
                                  "column": 22
                                }
                              },
                              "name": "modelData"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20488,
                            "end": 20504,
                            "loc": {
                              "start": {
                                "line": 524,
                                "column": 23
                              },
                              "end": {
                                "line": 524,
                                "column": 39
                              }
                            },
                            "name": "isSketchSelected"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 20507,
                          "end": 20512,
                          "loc": {
                            "start": {
                              "line": 524,
                              "column": 42
                            },
                            "end": {
                              "line": 524,
                              "column": 47
                            }
                          },
                          "value": false,
                          "rawValue": false,
                          "raw": "false"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 20522,
                      "end": 20556,
                      "loc": {
                        "start": {
                          "line": 525,
                          "column": 8
                        },
                        "end": {
                          "line": 525,
                          "column": 42
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 20522,
                        "end": 20555,
                        "loc": {
                          "start": {
                            "line": 525,
                            "column": 8
                          },
                          "end": {
                            "line": 525,
                            "column": 41
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 20522,
                          "end": 20550,
                          "loc": {
                            "start": {
                              "line": 525,
                              "column": 8
                            },
                            "end": {
                              "line": 525,
                              "column": 36
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 20522,
                            "end": 20536,
                            "loc": {
                              "start": {
                                "line": 525,
                                "column": 8
                              },
                              "end": {
                                "line": 525,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 20522,
                              "end": 20526,
                              "loc": {
                                "start": {
                                  "line": 525,
                                  "column": 8
                                },
                                "end": {
                                  "line": 525,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 20527,
                              "end": 20536,
                              "loc": {
                                "start": {
                                  "line": 525,
                                  "column": 13
                                },
                                "end": {
                                  "line": 525,
                                  "column": 22
                                }
                              },
                              "name": "modelData"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20537,
                            "end": 20550,
                            "loc": {
                              "start": {
                                "line": 525,
                                "column": 23
                              },
                              "end": {
                                "line": 525,
                                "column": 36
                              }
                            },
                            "name": "expressionSet"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "ArrayExpression",
                          "start": 20553,
                          "end": 20555,
                          "loc": {
                            "start": {
                              "line": 525,
                              "column": 39
                            },
                            "end": {
                              "line": 525,
                              "column": 41
                            }
                          },
                          "elements": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 20566,
                      "end": 20581,
                      "loc": {
                        "start": {
                          "line": 527,
                          "column": 8
                        },
                        "end": {
                          "line": 527,
                          "column": 23
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 20566,
                        "end": 20580,
                        "loc": {
                          "start": {
                            "line": 527,
                            "column": 8
                          },
                          "end": {
                            "line": 527,
                            "column": 22
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 20566,
                          "end": 20578,
                          "loc": {
                            "start": {
                              "line": 527,
                              "column": 8
                            },
                            "end": {
                              "line": 527,
                              "column": 20
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 20566,
                            "end": 20570,
                            "loc": {
                              "start": {
                                "line": 527,
                                "column": 8
                              },
                              "end": {
                                "line": 527,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20571,
                            "end": 20578,
                            "loc": {
                              "start": {
                                "line": 527,
                                "column": 13
                              },
                              "end": {
                                "line": 527,
                                "column": 20
                              }
                            },
                            "name": "refresh"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 20591,
                      "end": 20603,
                      "loc": {
                        "start": {
                          "line": 529,
                          "column": 8
                        },
                        "end": {
                          "line": 529,
                          "column": 20
                        }
                      },
                      "argument": {
                        "type": "Literal",
                        "start": 20598,
                        "end": 20602,
                        "loc": {
                          "start": {
                            "line": 529,
                            "column": 15
                          },
                          "end": {
                            "line": 529,
                            "column": 19
                          }
                        },
                        "value": true,
                        "rawValue": true,
                        "raw": "true"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 20615,
              "end": 20722,
              "loc": {
                "start": {
                  "line": 532,
                  "column": 4
                },
                "end": {
                  "line": 534,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 20615,
                "end": 20620,
                "loc": {
                  "start": {
                    "line": 532,
                    "column": 4
                  },
                  "end": {
                    "line": 532,
                    "column": 9
                  }
                },
                "name": "click"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 20620,
                "end": 20722,
                "loc": {
                  "start": {
                    "line": 532,
                    "column": 9
                  },
                  "end": {
                    "line": 534,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 20623,
                  "end": 20722,
                  "loc": {
                    "start": {
                      "line": 532,
                      "column": 12
                    },
                    "end": {
                      "line": 534,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 20633,
                      "end": 20716,
                      "loc": {
                        "start": {
                          "line": 533,
                          "column": 8
                        },
                        "end": {
                          "line": 533,
                          "column": 91
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 20640,
                        "end": 20715,
                        "loc": {
                          "start": {
                            "line": 533,
                            "column": 15
                          },
                          "end": {
                            "line": 533,
                            "column": 90
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 20640,
                          "end": 20674,
                          "loc": {
                            "start": {
                              "line": 533,
                              "column": 15
                            },
                            "end": {
                              "line": 533,
                              "column": 49
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 20640,
                            "end": 20668,
                            "loc": {
                              "start": {
                                "line": 533,
                                "column": 15
                              },
                              "end": {
                                "line": 533,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 20640,
                              "end": 20644,
                              "loc": {
                                "start": {
                                  "line": 533,
                                  "column": 15
                                },
                                "end": {
                                  "line": 533,
                                  "column": 19
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 20645,
                              "end": 20668,
                              "loc": {
                                "start": {
                                  "line": 533,
                                  "column": 20
                                },
                                "end": {
                                  "line": 533,
                                  "column": 43
                                }
                              },
                              "name": "__sketchControlsHandler"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20669,
                            "end": 20674,
                            "loc": {
                              "start": {
                                "line": 533,
                                "column": 44
                              },
                              "end": {
                                "line": 533,
                                "column": 49
                              }
                            },
                            "name": "click"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 20675,
                            "end": 20714,
                            "loc": {
                              "start": {
                                "line": 533,
                                "column": 50
                              },
                              "end": {
                                "line": 533,
                                "column": 89
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 20675,
                              "end": 20712,
                              "loc": {
                                "start": {
                                  "line": 533,
                                  "column": 50
                                },
                                "end": {
                                  "line": 533,
                                  "column": 87
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 20675,
                                "end": 20706,
                                "loc": {
                                  "start": {
                                    "line": 533,
                                    "column": 50
                                  },
                                  "end": {
                                    "line": 533,
                                    "column": 81
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 20675,
                                  "end": 20689,
                                  "loc": {
                                    "start": {
                                      "line": 533,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 533,
                                      "column": 64
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 20675,
                                    "end": 20679,
                                    "loc": {
                                      "start": {
                                        "line": 533,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 533,
                                        "column": 54
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20680,
                                    "end": 20689,
                                    "loc": {
                                      "start": {
                                        "line": 533,
                                        "column": 55
                                      },
                                      "end": {
                                        "line": 533,
                                        "column": 64
                                      }
                                    },
                                    "name": "modelData"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20690,
                                  "end": 20706,
                                  "loc": {
                                    "start": {
                                      "line": 533,
                                      "column": 65
                                    },
                                    "end": {
                                      "line": 533,
                                      "column": 81
                                    }
                                  },
                                  "name": "interactionPoint"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 20707,
                                "end": 20712,
                                "loc": {
                                  "start": {
                                    "line": 533,
                                    "column": 82
                                  },
                                  "end": {
                                    "line": 533,
                                    "column": 87
                                  }
                                },
                                "name": "clone"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 20728,
              "end": 21008,
              "loc": {
                "start": {
                  "line": 536,
                  "column": 4
                },
                "end": {
                  "line": 541,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 20728,
                "end": 20749,
                "loc": {
                  "start": {
                    "line": 536,
                    "column": 4
                  },
                  "end": {
                    "line": 536,
                    "column": 25
                  }
                },
                "name": "interactionPointMoved"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 20749,
                "end": 21008,
                "loc": {
                  "start": {
                    "line": 536,
                    "column": 25
                  },
                  "end": {
                    "line": 541,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 20752,
                  "end": 21008,
                  "loc": {
                    "start": {
                      "line": 536,
                      "column": 28
                    },
                    "end": {
                      "line": 541,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 20859,
                      "end": 20913,
                      "loc": {
                        "start": {
                          "line": 538,
                          "column": 8
                        },
                        "end": {
                          "line": 539,
                          "column": 19
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 20863,
                        "end": 20892,
                        "loc": {
                          "start": {
                            "line": 538,
                            "column": 12
                          },
                          "end": {
                            "line": 538,
                            "column": 41
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "MemberExpression",
                          "start": 20864,
                          "end": 20892,
                          "loc": {
                            "start": {
                              "line": 538,
                              "column": 13
                            },
                            "end": {
                              "line": 538,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 20864,
                            "end": 20868,
                            "loc": {
                              "start": {
                                "line": 538,
                                "column": 13
                              },
                              "end": {
                                "line": 538,
                                "column": 17
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20869,
                            "end": 20892,
                            "loc": {
                              "start": {
                                "line": 538,
                                "column": 18
                              },
                              "end": {
                                "line": 538,
                                "column": 41
                              }
                            },
                            "name": "__sketchControlsHandler"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "leadingComments": null
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 20906,
                        "end": 20913,
                        "loc": {
                          "start": {
                            "line": 539,
                            "column": 12
                          },
                          "end": {
                            "line": 539,
                            "column": 19
                          }
                        },
                        "argument": null
                      },
                      "alternate": null,
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "during execution of selectSketch, currentSketch is already set, but handler is not set",
                          "start": 20762,
                          "end": 20850,
                          "loc": {
                            "start": {
                              "line": 537,
                              "column": 8
                            },
                            "end": {
                              "line": 537,
                              "column": 96
                            }
                          },
                          "range": [
                            20762,
                            20850
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 20922,
                      "end": 21002,
                      "loc": {
                        "start": {
                          "line": 540,
                          "column": 8
                        },
                        "end": {
                          "line": 540,
                          "column": 88
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 20922,
                        "end": 21001,
                        "loc": {
                          "start": {
                            "line": 540,
                            "column": 8
                          },
                          "end": {
                            "line": 540,
                            "column": 87
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 20922,
                          "end": 20960,
                          "loc": {
                            "start": {
                              "line": 540,
                              "column": 8
                            },
                            "end": {
                              "line": 540,
                              "column": 46
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 20922,
                            "end": 20950,
                            "loc": {
                              "start": {
                                "line": 540,
                                "column": 8
                              },
                              "end": {
                                "line": 540,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 20922,
                              "end": 20926,
                              "loc": {
                                "start": {
                                  "line": 540,
                                  "column": 8
                                },
                                "end": {
                                  "line": 540,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 20927,
                              "end": 20950,
                              "loc": {
                                "start": {
                                  "line": 540,
                                  "column": 13
                                },
                                "end": {
                                  "line": 540,
                                  "column": 36
                                }
                              },
                              "name": "__sketchControlsHandler"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20951,
                            "end": 20960,
                            "loc": {
                              "start": {
                                "line": 540,
                                "column": 37
                              },
                              "end": {
                                "line": 540,
                                "column": 46
                              }
                            },
                            "name": "mouseMove"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 20961,
                            "end": 21000,
                            "loc": {
                              "start": {
                                "line": 540,
                                "column": 47
                              },
                              "end": {
                                "line": 540,
                                "column": 86
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 20961,
                              "end": 20998,
                              "loc": {
                                "start": {
                                  "line": 540,
                                  "column": 47
                                },
                                "end": {
                                  "line": 540,
                                  "column": 84
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 20961,
                                "end": 20992,
                                "loc": {
                                  "start": {
                                    "line": 540,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 540,
                                    "column": 78
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 20961,
                                  "end": 20975,
                                  "loc": {
                                    "start": {
                                      "line": 540,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 540,
                                      "column": 61
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 20961,
                                    "end": 20965,
                                    "loc": {
                                      "start": {
                                        "line": 540,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 540,
                                        "column": 51
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20966,
                                    "end": 20975,
                                    "loc": {
                                      "start": {
                                        "line": 540,
                                        "column": 52
                                      },
                                      "end": {
                                        "line": 540,
                                        "column": 61
                                      }
                                    },
                                    "name": "modelData"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20976,
                                  "end": 20992,
                                  "loc": {
                                    "start": {
                                      "line": 540,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 540,
                                      "column": 78
                                    }
                                  },
                                  "name": "interactionPoint"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 20993,
                                "end": 20998,
                                "loc": {
                                  "start": {
                                    "line": 540,
                                    "column": 79
                                  },
                                  "end": {
                                    "line": 540,
                                    "column": 84
                                  }
                                },
                                "name": "clone"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 21014,
              "end": 21023,
              "loc": {
                "start": {
                  "line": 543,
                  "column": 4
                },
                "end": {
                  "line": 543,
                  "column": 13
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 21014,
                "end": 21018,
                "loc": {
                  "start": {
                    "line": 543,
                    "column": 4
                  },
                  "end": {
                    "line": 543,
                    "column": 8
                  }
                },
                "name": "undo"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 21018,
                "end": 21023,
                "loc": {
                  "start": {
                    "line": 543,
                    "column": 8
                  },
                  "end": {
                    "line": 543,
                    "column": 13
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 21021,
                  "end": 21023,
                  "loc": {
                    "start": {
                      "line": 543,
                      "column": 11
                    },
                    "end": {
                      "line": 543,
                      "column": 13
                    }
                  },
                  "body": []
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 21029,
              "end": 21038,
              "loc": {
                "start": {
                  "line": 545,
                  "column": 4
                },
                "end": {
                  "line": 545,
                  "column": 13
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 21029,
                "end": 21033,
                "loc": {
                  "start": {
                    "line": 545,
                    "column": 4
                  },
                  "end": {
                    "line": 545,
                    "column": 8
                  }
                },
                "name": "redo"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 21033,
                "end": 21038,
                "loc": {
                  "start": {
                    "line": 545,
                    "column": 8
                  },
                  "end": {
                    "line": 545,
                    "column": 13
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 21036,
                  "end": 21038,
                  "loc": {
                    "start": {
                      "line": 545,
                      "column": 11
                    },
                    "end": {
                      "line": 545,
                      "column": 13
                    }
                  },
                  "body": []
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 21044,
              "end": 21121,
              "loc": {
                "start": {
                  "line": 547,
                  "column": 4
                },
                "end": {
                  "line": 549,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 21044,
                "end": 21053,
                "loc": {
                  "start": {
                    "line": 547,
                    "column": 4
                  },
                  "end": {
                    "line": 547,
                    "column": 13
                  }
                },
                "name": "setPrompt"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 21053,
                "end": 21121,
                "loc": {
                  "start": {
                    "line": 547,
                    "column": 13
                  },
                  "end": {
                    "line": 549,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 21054,
                    "end": 21064,
                    "loc": {
                      "start": {
                        "line": 547,
                        "column": 14
                      },
                      "end": {
                        "line": 547,
                        "column": 24
                      }
                    },
                    "name": "promptText"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 21066,
                  "end": 21121,
                  "loc": {
                    "start": {
                      "line": 547,
                      "column": 26
                    },
                    "end": {
                      "line": 549,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 21076,
                      "end": 21115,
                      "loc": {
                        "start": {
                          "line": 548,
                          "column": 8
                        },
                        "end": {
                          "line": 548,
                          "column": 47
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 21076,
                        "end": 21114,
                        "loc": {
                          "start": {
                            "line": 548,
                            "column": 8
                          },
                          "end": {
                            "line": 548,
                            "column": 46
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 21076,
                          "end": 21101,
                          "loc": {
                            "start": {
                              "line": 548,
                              "column": 8
                            },
                            "end": {
                              "line": 548,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 21076,
                            "end": 21090,
                            "loc": {
                              "start": {
                                "line": 548,
                                "column": 8
                              },
                              "end": {
                                "line": 548,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 21076,
                              "end": 21080,
                              "loc": {
                                "start": {
                                  "line": 548,
                                  "column": 8
                                },
                                "end": {
                                  "line": 548,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 21081,
                              "end": 21090,
                              "loc": {
                                "start": {
                                  "line": 548,
                                  "column": 13
                                },
                                "end": {
                                  "line": 548,
                                  "column": 22
                                }
                              },
                              "name": "modelData"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 21091,
                            "end": 21101,
                            "loc": {
                              "start": {
                                "line": 548,
                                "column": 23
                              },
                              "end": {
                                "line": 548,
                                "column": 33
                              }
                            },
                            "name": "promptText"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 21104,
                          "end": 21114,
                          "loc": {
                            "start": {
                              "line": 548,
                              "column": 36
                            },
                            "end": {
                              "line": 548,
                              "column": 46
                            }
                          },
                          "name": "promptText"
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 21127,
              "end": 21902,
              "loc": {
                "start": {
                  "line": 551,
                  "column": 4
                },
                "end": {
                  "line": 569,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 21127,
                "end": 21146,
                "loc": {
                  "start": {
                    "line": 551,
                    "column": 4
                  },
                  "end": {
                    "line": 551,
                    "column": 23
                  }
                },
                "name": "askConstraintParams"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 21146,
                "end": 21902,
                "loc": {
                  "start": {
                    "line": 551,
                    "column": 23
                  },
                  "end": {
                    "line": 569,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 21147,
                    "end": 21156,
                    "loc": {
                      "start": {
                        "line": 551,
                        "column": 24
                      },
                      "end": {
                        "line": 551,
                        "column": 33
                      }
                    },
                    "name": "oldParams"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 21158,
                  "end": 21902,
                  "loc": {
                    "start": {
                      "line": 551,
                      "column": 35
                    },
                    "end": {
                      "line": 569,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 21168,
                      "end": 21217,
                      "loc": {
                        "start": {
                          "line": 552,
                          "column": 8
                        },
                        "end": {
                          "line": 552,
                          "column": 57
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 21168,
                        "end": 21216,
                        "loc": {
                          "start": {
                            "line": 552,
                            "column": 8
                          },
                          "end": {
                            "line": 552,
                            "column": 56
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 21168,
                          "end": 21182,
                          "loc": {
                            "start": {
                              "line": 552,
                              "column": 8
                            },
                            "end": {
                              "line": 552,
                              "column": 22
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 21168,
                            "end": 21172,
                            "loc": {
                              "start": {
                                "line": 552,
                                "column": 8
                              },
                              "end": {
                                "line": 552,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 21173,
                            "end": 21182,
                            "loc": {
                              "start": {
                                "line": 552,
                                "column": 13
                              },
                              "end": {
                                "line": 552,
                                "column": 22
                              }
                            },
                            "name": "setPrompt"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 21183,
                            "end": 21215,
                            "loc": {
                              "start": {
                                "line": 552,
                                "column": 23
                              },
                              "end": {
                                "line": 552,
                                "column": 55
                              }
                            },
                            "value": "Enter expression, value, fixed",
                            "rawValue": "Enter expression, value, fixed",
                            "raw": "'Enter expression, value, fixed'"
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 21226,
                      "end": 21285,
                      "loc": {
                        "start": {
                          "line": 553,
                          "column": 8
                        },
                        "end": {
                          "line": 553,
                          "column": 67
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 21226,
                        "end": 21284,
                        "loc": {
                          "start": {
                            "line": 553,
                            "column": 8
                          },
                          "end": {
                            "line": 553,
                            "column": 66
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 21226,
                          "end": 21261,
                          "loc": {
                            "start": {
                              "line": 553,
                              "column": 8
                            },
                            "end": {
                              "line": 553,
                              "column": 43
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 21226,
                            "end": 21240,
                            "loc": {
                              "start": {
                                "line": 553,
                                "column": 8
                              },
                              "end": {
                                "line": 553,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 21226,
                              "end": 21230,
                              "loc": {
                                "start": {
                                  "line": 553,
                                  "column": 8
                                },
                                "end": {
                                  "line": 553,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 21231,
                              "end": 21240,
                              "loc": {
                                "start": {
                                  "line": 553,
                                  "column": 13
                                },
                                "end": {
                                  "line": 553,
                                  "column": 22
                                }
                              },
                              "name": "modelData"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 21241,
                            "end": 21261,
                            "loc": {
                              "start": {
                                "line": 553,
                                "column": 23
                              },
                              "end": {
                                "line": 553,
                                "column": 43
                              }
                            },
                            "name": "constraintExpression"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 21264,
                          "end": 21284,
                          "loc": {
                            "start": {
                              "line": 553,
                              "column": 46
                            },
                            "end": {
                              "line": 553,
                              "column": 66
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 21264,
                            "end": 21273,
                            "loc": {
                              "start": {
                                "line": 553,
                                "column": 46
                              },
                              "end": {
                                "line": 553,
                                "column": 55
                              }
                            },
                            "name": "oldParams"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 21274,
                            "end": 21284,
                            "loc": {
                              "start": {
                                "line": 553,
                                "column": 56
                              },
                              "end": {
                                "line": 553,
                                "column": 66
                              }
                            },
                            "name": "expression"
                          },
                          "computed": false
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 21294,
                      "end": 21343,
                      "loc": {
                        "start": {
                          "line": 554,
                          "column": 8
                        },
                        "end": {
                          "line": 554,
                          "column": 57
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 21294,
                        "end": 21342,
                        "loc": {
                          "start": {
                            "line": 554,
                            "column": 8
                          },
                          "end": {
                            "line": 554,
                            "column": 56
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 21294,
                          "end": 21324,
                          "loc": {
                            "start": {
                              "line": 554,
                              "column": 8
                            },
                            "end": {
                              "line": 554,
                              "column": 38
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 21294,
                            "end": 21308,
                            "loc": {
                              "start": {
                                "line": 554,
                                "column": 8
                              },
                              "end": {
                                "line": 554,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 21294,
                              "end": 21298,
                              "loc": {
                                "start": {
                                  "line": 554,
                                  "column": 8
                                },
                                "end": {
                                  "line": 554,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 21299,
                              "end": 21308,
                              "loc": {
                                "start": {
                                  "line": 554,
                                  "column": 13
                                },
                                "end": {
                                  "line": 554,
                                  "column": 22
                                }
                              },
                              "name": "modelData"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 21309,
                            "end": 21324,
                            "loc": {
                              "start": {
                                "line": 554,
                                "column": 23
                              },
                              "end": {
                                "line": 554,
                                "column": 38
                              }
                            },
                            "name": "constraintValue"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 21327,
                          "end": 21342,
                          "loc": {
                            "start": {
                              "line": 554,
                              "column": 41
                            },
                            "end": {
                              "line": 554,
                              "column": 56
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 21327,
                            "end": 21336,
                            "loc": {
                              "start": {
                                "line": 554,
                                "column": 41
                              },
                              "end": {
                                "line": 554,
                                "column": 50
                              }
                            },
                            "name": "oldParams"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 21337,
                            "end": 21342,
                            "loc": {
                              "start": {
                                "line": 554,
                                "column": 51
                              },
                              "end": {
                                "line": 554,
                                "column": 56
                              }
                            },
                            "name": "value"
                          },
                          "computed": false
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 21352,
                      "end": 21401,
                      "loc": {
                        "start": {
                          "line": 555,
                          "column": 8
                        },
                        "end": {
                          "line": 555,
                          "column": 57
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 21352,
                        "end": 21400,
                        "loc": {
                          "start": {
                            "line": 555,
                            "column": 8
                          },
                          "end": {
                            "line": 555,
                            "column": 56
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 21352,
                          "end": 21382,
                          "loc": {
                            "start": {
                              "line": 555,
                              "column": 8
                            },
                            "end": {
                              "line": 555,
                              "column": 38
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 21352,
                            "end": 21366,
                            "loc": {
                              "start": {
                                "line": 555,
                                "column": 8
                              },
                              "end": {
                                "line": 555,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 21352,
                              "end": 21356,
                              "loc": {
                                "start": {
                                  "line": 555,
                                  "column": 8
                                },
                                "end": {
                                  "line": 555,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 21357,
                              "end": 21366,
                              "loc": {
                                "start": {
                                  "line": 555,
                                  "column": 13
                                },
                                "end": {
                                  "line": 555,
                                  "column": 22
                                }
                              },
                              "name": "modelData"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 21367,
                            "end": 21382,
                            "loc": {
                              "start": {
                                "line": 555,
                                "column": 23
                              },
                              "end": {
                                "line": 555,
                                "column": 38
                              }
                            },
                            "name": "constraintFixed"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 21385,
                          "end": 21400,
                          "loc": {
                            "start": {
                              "line": 555,
                              "column": 41
                            },
                            "end": {
                              "line": 555,
                              "column": 56
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 21385,
                            "end": 21394,
                            "loc": {
                              "start": {
                                "line": 555,
                                "column": 41
                              },
                              "end": {
                                "line": 555,
                                "column": 50
                              }
                            },
                            "name": "oldParams"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 21395,
                            "end": 21400,
                            "loc": {
                              "start": {
                                "line": 555,
                                "column": 51
                              },
                              "end": {
                                "line": 555,
                                "column": 56
                              }
                            },
                            "name": "fixed"
                          },
                          "computed": false
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 21410,
                      "end": 21456,
                      "loc": {
                        "start": {
                          "line": 556,
                          "column": 8
                        },
                        "end": {
                          "line": 556,
                          "column": 54
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 21410,
                        "end": 21455,
                        "loc": {
                          "start": {
                            "line": 556,
                            "column": 8
                          },
                          "end": {
                            "line": 556,
                            "column": 53
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 21410,
                          "end": 21448,
                          "loc": {
                            "start": {
                              "line": 556,
                              "column": 8
                            },
                            "end": {
                              "line": 556,
                              "column": 46
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 21410,
                            "end": 21424,
                            "loc": {
                              "start": {
                                "line": 556,
                                "column": 8
                              },
                              "end": {
                                "line": 556,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 21410,
                              "end": 21414,
                              "loc": {
                                "start": {
                                  "line": 556,
                                  "column": 8
                                },
                                "end": {
                                  "line": 556,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 21415,
                              "end": 21424,
                              "loc": {
                                "start": {
                                  "line": 556,
                                  "column": 13
                                },
                                "end": {
                                  "line": 556,
                                  "column": 22
                                }
                              },
                              "name": "modelData"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 21425,
                            "end": 21448,
                            "loc": {
                              "start": {
                                "line": 556,
                                "column": 23
                              },
                              "end": {
                                "line": 556,
                                "column": 46
                              }
                            },
                            "name": "isConstraintFormVisible"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 21451,
                          "end": 21455,
                          "loc": {
                            "start": {
                              "line": 556,
                              "column": 49
                            },
                            "end": {
                              "line": 556,
                              "column": 53
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        }
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 21465,
                      "end": 21896,
                      "loc": {
                        "start": {
                          "line": 557,
                          "column": 8
                        },
                        "end": {
                          "line": 568,
                          "column": 11
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 21472,
                        "end": 21895,
                        "loc": {
                          "start": {
                            "line": 557,
                            "column": 15
                          },
                          "end": {
                            "line": 568,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 21472,
                          "end": 21632,
                          "loc": {
                            "start": {
                              "line": 557,
                              "column": 15
                            },
                            "end": {
                              "line": 560,
                              "column": 15
                            }
                          },
                          "object": {
                            "type": "NewExpression",
                            "start": 21472,
                            "end": 21627,
                            "loc": {
                              "start": {
                                "line": 557,
                                "column": 15
                              },
                              "end": {
                                "line": 560,
                                "column": 10
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 21476,
                              "end": 21483,
                              "loc": {
                                "start": {
                                  "line": 557,
                                  "column": 19
                                },
                                "end": {
                                  "line": 557,
                                  "column": 26
                                }
                              },
                              "name": "Promise"
                            },
                            "arguments": [
                              {
                                "type": "ArrowFunctionExpression",
                                "start": 21484,
                                "end": 21626,
                                "loc": {
                                  "start": {
                                    "line": 557,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 560,
                                    "column": 9
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": false,
                                "async": false,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "start": 21485,
                                    "end": 21492,
                                    "loc": {
                                      "start": {
                                        "line": 557,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 557,
                                        "column": 35
                                      }
                                    },
                                    "name": "resolve"
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 21494,
                                    "end": 21500,
                                    "loc": {
                                      "start": {
                                        "line": 557,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 557,
                                        "column": 43
                                      }
                                    },
                                    "name": "reject"
                                  }
                                ],
                                "body": {
                                  "type": "BlockStatement",
                                  "start": 21505,
                                  "end": 21626,
                                  "loc": {
                                    "start": {
                                      "line": 557,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 560,
                                      "column": 9
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 21519,
                                      "end": 21561,
                                      "loc": {
                                        "start": {
                                          "line": 558,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 558,
                                          "column": 54
                                        }
                                      },
                                      "expression": {
                                        "type": "AssignmentExpression",
                                        "start": 21519,
                                        "end": 21560,
                                        "loc": {
                                          "start": {
                                            "line": 558,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 558,
                                            "column": 53
                                          }
                                        },
                                        "operator": "=",
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 21519,
                                          "end": 21550,
                                          "loc": {
                                            "start": {
                                              "line": 558,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 558,
                                              "column": 43
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 21519,
                                            "end": 21533,
                                            "loc": {
                                              "start": {
                                                "line": 558,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 558,
                                                "column": 26
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 21519,
                                              "end": 21523,
                                              "loc": {
                                                "start": {
                                                  "line": 558,
                                                  "column": 12
                                                },
                                                "end": {
                                                  "line": 558,
                                                  "column": 16
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 21524,
                                              "end": 21533,
                                              "loc": {
                                                "start": {
                                                  "line": 558,
                                                  "column": 17
                                                },
                                                "end": {
                                                  "line": 558,
                                                  "column": 26
                                                }
                                              },
                                              "name": "modelData"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21534,
                                            "end": 21550,
                                            "loc": {
                                              "start": {
                                                "line": 558,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 558,
                                                "column": 43
                                              }
                                            },
                                            "name": "acceptConstraint"
                                          },
                                          "computed": false
                                        },
                                        "right": {
                                          "type": "Identifier",
                                          "start": 21553,
                                          "end": 21560,
                                          "loc": {
                                            "start": {
                                              "line": 558,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 558,
                                              "column": 53
                                            }
                                          },
                                          "name": "resolve"
                                        }
                                      }
                                    },
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 21574,
                                      "end": 21616,
                                      "loc": {
                                        "start": {
                                          "line": 559,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 559,
                                          "column": 54
                                        }
                                      },
                                      "expression": {
                                        "type": "AssignmentExpression",
                                        "start": 21574,
                                        "end": 21615,
                                        "loc": {
                                          "start": {
                                            "line": 559,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 559,
                                            "column": 53
                                          }
                                        },
                                        "operator": "=",
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 21574,
                                          "end": 21606,
                                          "loc": {
                                            "start": {
                                              "line": 559,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 559,
                                              "column": 44
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 21574,
                                            "end": 21588,
                                            "loc": {
                                              "start": {
                                                "line": 559,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 559,
                                                "column": 26
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 21574,
                                              "end": 21578,
                                              "loc": {
                                                "start": {
                                                  "line": 559,
                                                  "column": 12
                                                },
                                                "end": {
                                                  "line": 559,
                                                  "column": 16
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 21579,
                                              "end": 21588,
                                              "loc": {
                                                "start": {
                                                  "line": 559,
                                                  "column": 17
                                                },
                                                "end": {
                                                  "line": 559,
                                                  "column": 26
                                                }
                                              },
                                              "name": "modelData"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21589,
                                            "end": 21606,
                                            "loc": {
                                              "start": {
                                                "line": 559,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 559,
                                                "column": 44
                                              }
                                            },
                                            "name": "declineConstraint"
                                          },
                                          "computed": false
                                        },
                                        "right": {
                                          "type": "Identifier",
                                          "start": 21609,
                                          "end": 21615,
                                          "loc": {
                                            "start": {
                                              "line": 559,
                                              "column": 47
                                            },
                                            "end": {
                                              "line": 559,
                                              "column": 53
                                            }
                                          },
                                          "name": "reject"
                                        }
                                      }
                                    }
                                  ]
                                }
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 21628,
                            "end": 21632,
                            "loc": {
                              "start": {
                                "line": 560,
                                "column": 11
                              },
                              "end": {
                                "line": 560,
                                "column": 15
                              }
                            },
                            "name": "then"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 21633,
                            "end": 21763,
                            "loc": {
                              "start": {
                                "line": 560,
                                "column": 16
                              },
                              "end": {
                                "line": 564,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 21633,
                                "end": 21634,
                                "loc": {
                                  "start": {
                                    "line": 560,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 560,
                                    "column": 17
                                  }
                                },
                                "name": "x"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 21638,
                              "end": 21763,
                              "loc": {
                                "start": {
                                  "line": 560,
                                  "column": 21
                                },
                                "end": {
                                  "line": 564,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 21652,
                                  "end": 21671,
                                  "loc": {
                                    "start": {
                                      "line": 561,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 561,
                                      "column": 31
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 21652,
                                    "end": 21670,
                                    "loc": {
                                      "start": {
                                        "line": 561,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 561,
                                        "column": 30
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 21652,
                                      "end": 21666,
                                      "loc": {
                                        "start": {
                                          "line": 561,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 561,
                                          "column": 26
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 21652,
                                        "end": 21656,
                                        "loc": {
                                          "start": {
                                            "line": 561,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 561,
                                            "column": 16
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 21657,
                                        "end": 21666,
                                        "loc": {
                                          "start": {
                                            "line": 561,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 561,
                                            "column": 26
                                          }
                                        },
                                        "name": "setPrompt"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 21667,
                                        "end": 21669,
                                        "loc": {
                                          "start": {
                                            "line": 561,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 561,
                                            "column": 29
                                          }
                                        },
                                        "value": "",
                                        "rawValue": "",
                                        "raw": "''"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 21684,
                                  "end": 21731,
                                  "loc": {
                                    "start": {
                                      "line": 562,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 562,
                                      "column": 59
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 21684,
                                    "end": 21730,
                                    "loc": {
                                      "start": {
                                        "line": 562,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 562,
                                        "column": 58
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 21684,
                                      "end": 21722,
                                      "loc": {
                                        "start": {
                                          "line": 562,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 562,
                                          "column": 50
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 21684,
                                        "end": 21698,
                                        "loc": {
                                          "start": {
                                            "line": 562,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 562,
                                            "column": 26
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 21684,
                                          "end": 21688,
                                          "loc": {
                                            "start": {
                                              "line": 562,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 562,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 21689,
                                          "end": 21698,
                                          "loc": {
                                            "start": {
                                              "line": 562,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 562,
                                              "column": 26
                                            }
                                          },
                                          "name": "modelData"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 21699,
                                        "end": 21722,
                                        "loc": {
                                          "start": {
                                            "line": 562,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 562,
                                            "column": 50
                                          }
                                        },
                                        "name": "isConstraintFormVisible"
                                      },
                                      "computed": false
                                    },
                                    "right": {
                                      "type": "Literal",
                                      "start": 21725,
                                      "end": 21730,
                                      "loc": {
                                        "start": {
                                          "line": 562,
                                          "column": 53
                                        },
                                        "end": {
                                          "line": 562,
                                          "column": 58
                                        }
                                      },
                                      "value": false,
                                      "rawValue": false,
                                      "raw": "false"
                                    }
                                  }
                                },
                                {
                                  "type": "ReturnStatement",
                                  "start": 21744,
                                  "end": 21753,
                                  "loc": {
                                    "start": {
                                      "line": 563,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 563,
                                      "column": 21
                                    }
                                  },
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 21751,
                                    "end": 21752,
                                    "loc": {
                                      "start": {
                                        "line": 563,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 563,
                                        "column": 20
                                      }
                                    },
                                    "name": "x"
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 21765,
                            "end": 21894,
                            "loc": {
                              "start": {
                                "line": 564,
                                "column": 11
                              },
                              "end": {
                                "line": 568,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 21765,
                                "end": 21766,
                                "loc": {
                                  "start": {
                                    "line": 564,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 564,
                                    "column": 12
                                  }
                                },
                                "name": "x"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 21770,
                              "end": 21894,
                              "loc": {
                                "start": {
                                  "line": 564,
                                  "column": 16
                                },
                                "end": {
                                  "line": 568,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 21784,
                                  "end": 21803,
                                  "loc": {
                                    "start": {
                                      "line": 565,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 565,
                                      "column": 31
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 21784,
                                    "end": 21802,
                                    "loc": {
                                      "start": {
                                        "line": 565,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 565,
                                        "column": 30
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 21784,
                                      "end": 21798,
                                      "loc": {
                                        "start": {
                                          "line": 565,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 565,
                                          "column": 26
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 21784,
                                        "end": 21788,
                                        "loc": {
                                          "start": {
                                            "line": 565,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 565,
                                            "column": 16
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 21789,
                                        "end": 21798,
                                        "loc": {
                                          "start": {
                                            "line": 565,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 565,
                                            "column": 26
                                          }
                                        },
                                        "name": "setPrompt"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 21799,
                                        "end": 21801,
                                        "loc": {
                                          "start": {
                                            "line": 565,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 565,
                                            "column": 29
                                          }
                                        },
                                        "value": "",
                                        "rawValue": "",
                                        "raw": "''"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 21816,
                                  "end": 21863,
                                  "loc": {
                                    "start": {
                                      "line": 566,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 566,
                                      "column": 59
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 21816,
                                    "end": 21862,
                                    "loc": {
                                      "start": {
                                        "line": 566,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 566,
                                        "column": 58
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 21816,
                                      "end": 21854,
                                      "loc": {
                                        "start": {
                                          "line": 566,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 566,
                                          "column": 50
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 21816,
                                        "end": 21830,
                                        "loc": {
                                          "start": {
                                            "line": 566,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 566,
                                            "column": 26
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 21816,
                                          "end": 21820,
                                          "loc": {
                                            "start": {
                                              "line": 566,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 566,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 21821,
                                          "end": 21830,
                                          "loc": {
                                            "start": {
                                              "line": 566,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 566,
                                              "column": 26
                                            }
                                          },
                                          "name": "modelData"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 21831,
                                        "end": 21854,
                                        "loc": {
                                          "start": {
                                            "line": 566,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 566,
                                            "column": 50
                                          }
                                        },
                                        "name": "isConstraintFormVisible"
                                      },
                                      "computed": false
                                    },
                                    "right": {
                                      "type": "Literal",
                                      "start": 21857,
                                      "end": 21862,
                                      "loc": {
                                        "start": {
                                          "line": 566,
                                          "column": 53
                                        },
                                        "end": {
                                          "line": 566,
                                          "column": 58
                                        }
                                      },
                                      "value": false,
                                      "rawValue": false,
                                      "raw": "false"
                                    }
                                  }
                                },
                                {
                                  "type": "ThrowStatement",
                                  "start": 21876,
                                  "end": 21884,
                                  "loc": {
                                    "start": {
                                      "line": 567,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 567,
                                      "column": 20
                                    }
                                  },
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 21882,
                                    "end": 21883,
                                    "loc": {
                                      "start": {
                                        "line": 567,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 567,
                                        "column": 19
                                      }
                                    },
                                    "name": "x"
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "Block",
                  "value": "*\n     * Makes given THREE object suitable for visualization on given View.\n     * It adds interaction on the object with update method.\n     * The update method allows to automatically recalculate sizes and visible geometry of the object.\n     * The function can be called many times, but the object must not have other interaction on it.\n     * Ideally, this method should be called immediately after the object has been created.\n     ",
                  "start": 21908,
                  "end": 22349,
                  "loc": {
                    "start": {
                      "line": 571,
                      "column": 4
                    },
                    "end": {
                      "line": 577,
                      "column": 7
                    }
                  },
                  "range": [
                    21908,
                    22349
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 22354,
              "end": 22569,
              "loc": {
                "start": {
                  "line": 578,
                  "column": 4
                },
                "end": {
                  "line": 584,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 22361,
                "end": 22382,
                "loc": {
                  "start": {
                    "line": 578,
                    "column": 11
                  },
                  "end": {
                    "line": 578,
                    "column": 32
                  }
                },
                "name": "registerVisualization"
              },
              "static": true,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 22382,
                "end": 22569,
                "loc": {
                  "start": {
                    "line": 578,
                    "column": 32
                  },
                  "end": {
                    "line": 584,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 22383,
                    "end": 22387,
                    "loc": {
                      "start": {
                        "line": 578,
                        "column": 33
                      },
                      "end": {
                        "line": 578,
                        "column": 37
                      }
                    },
                    "name": "view"
                  },
                  {
                    "type": "Identifier",
                    "start": 22389,
                    "end": 22392,
                    "loc": {
                      "start": {
                        "line": 578,
                        "column": 39
                      },
                      "end": {
                        "line": 578,
                        "column": 42
                      }
                    },
                    "name": "obj"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 22394,
                  "end": 22569,
                  "loc": {
                    "start": {
                      "line": 578,
                      "column": 44
                    },
                    "end": {
                      "line": 584,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 22404,
                      "end": 22563,
                      "loc": {
                        "start": {
                          "line": 579,
                          "column": 8
                        },
                        "end": {
                          "line": 583,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 22404,
                        "end": 22562,
                        "loc": {
                          "start": {
                            "line": 579,
                            "column": 8
                          },
                          "end": {
                            "line": 583,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 22404,
                          "end": 22471,
                          "loc": {
                            "start": {
                              "line": 579,
                              "column": 8
                            },
                            "end": {
                              "line": 581,
                              "column": 13
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 22404,
                            "end": 22468,
                            "loc": {
                              "start": {
                                "line": 579,
                                "column": 8
                              },
                              "end": {
                                "line": 581,
                                "column": 10
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 22404,
                              "end": 22425,
                              "loc": {
                                "start": {
                                  "line": 579,
                                  "column": 8
                                },
                                "end": {
                                  "line": 579,
                                  "column": 29
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 22404,
                                "end": 22407,
                                "loc": {
                                  "start": {
                                    "line": 579,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 579,
                                    "column": 11
                                  }
                                },
                                "name": "obj"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 22408,
                                "end": 22425,
                                "loc": {
                                  "start": {
                                    "line": 579,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 579,
                                    "column": 29
                                  }
                                },
                                "name": "createInteraction"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ObjectExpression",
                                "start": 22426,
                                "end": 22467,
                                "loc": {
                                  "start": {
                                    "line": 579,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 581,
                                    "column": 9
                                  }
                                },
                                "properties": [
                                  {
                                    "type": "Property",
                                    "start": 22440,
                                    "end": 22456,
                                    "loc": {
                                      "start": {
                                        "line": 580,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 580,
                                        "column": 28
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 22440,
                                      "end": 22448,
                                      "loc": {
                                        "start": {
                                          "line": 580,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 580,
                                          "column": 20
                                        }
                                      },
                                      "name": "priority"
                                    },
                                    "value": {
                                      "type": "UnaryExpression",
                                      "start": 22450,
                                      "end": 22456,
                                      "loc": {
                                        "start": {
                                          "line": 580,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 580,
                                          "column": 28
                                        }
                                      },
                                      "operator": "-",
                                      "prefix": true,
                                      "argument": {
                                        "type": "Literal",
                                        "start": 22451,
                                        "end": 22456,
                                        "loc": {
                                          "start": {
                                            "line": 580,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 580,
                                            "column": 28
                                          }
                                        },
                                        "value": 10000,
                                        "rawValue": 10000,
                                        "raw": "10000"
                                      }
                                    },
                                    "kind": "init"
                                  }
                                ]
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 22469,
                            "end": 22471,
                            "loc": {
                              "start": {
                                "line": 581,
                                "column": 11
                              },
                              "end": {
                                "line": 581,
                                "column": 13
                              }
                            },
                            "name": "on"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ObjectExpression",
                            "start": 22472,
                            "end": 22561,
                            "loc": {
                              "start": {
                                "line": 581,
                                "column": 14
                              },
                              "end": {
                                "line": 583,
                                "column": 9
                              }
                            },
                            "properties": [
                              {
                                "type": "Property",
                                "start": 22486,
                                "end": 22550,
                                "loc": {
                                  "start": {
                                    "line": 582,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 582,
                                    "column": 76
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": true,
                                "key": {
                                  "type": "MemberExpression",
                                  "start": 22487,
                                  "end": 22520,
                                  "loc": {
                                    "start": {
                                      "line": 582,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 582,
                                      "column": 46
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 22487,
                                    "end": 22511,
                                    "loc": {
                                      "start": {
                                        "line": 582,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 582,
                                        "column": 37
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 22487,
                                      "end": 22501,
                                      "loc": {
                                        "start": {
                                          "line": 582,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 582,
                                          "column": 27
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 22487,
                                        "end": 22494,
                                        "loc": {
                                          "start": {
                                            "line": 582,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 582,
                                            "column": 20
                                          }
                                        },
                                        "name": "Object3"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 22495,
                                        "end": 22501,
                                        "loc": {
                                          "start": {
                                            "line": 582,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 582,
                                            "column": 27
                                          }
                                        },
                                        "name": "Events"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 22502,
                                      "end": 22511,
                                      "loc": {
                                        "start": {
                                          "line": 582,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 582,
                                          "column": 37
                                        }
                                      },
                                      "name": "Lifecycle"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 22512,
                                    "end": 22520,
                                    "loc": {
                                      "start": {
                                        "line": 582,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 582,
                                        "column": 46
                                      }
                                    },
                                    "name": "Rendered"
                                  },
                                  "computed": false
                                },
                                "value": {
                                  "type": "Identifier",
                                  "start": 22523,
                                  "end": 22550,
                                  "loc": {
                                    "start": {
                                      "line": 582,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 582,
                                      "column": 76
                                    }
                                  },
                                  "name": "updateSizesAndVisualization"
                                },
                                "kind": "init"
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "Block",
                  "value": "*\n     * Makes given THREE object suitable for visualization on given View.\n     * It adds interaction on the object with update method.\n     * The update method allows to automatically recalculate sizes and visible geometry of the object.\n     * The function can be called many times, but the object must not have other interaction on it.\n     * Ideally, this method should be called immediately after the object has been created.\n     ",
                  "start": 21908,
                  "end": 22349,
                  "loc": {
                    "start": {
                      "line": 571,
                      "column": 4
                    },
                    "end": {
                      "line": 577,
                      "column": 7
                    }
                  },
                  "range": [
                    21908,
                    22349
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "Block",
                  "value": "*\n     * A mixin which adds capability of specifying sizes in screen pixels.\n     * All sizes are kept in a single list 'pixelSizes'.\n     * Method 'updateSizes' is added: it should be called by user when camera/size changes.\n     * It passes geometrical sizes (in local object space) to method 'setGeomSizes'.\n     * If 'getSizingPoint' method is present in class, it is called to get\n     * calibrating position in local space of the object (otherwise origin is used).\n     ",
                  "start": 22575,
                  "end": 23055,
                  "loc": {
                    "start": {
                      "line": 586,
                      "column": 4
                    },
                    "end": {
                      "line": 593,
                      "column": 7
                    }
                  },
                  "range": [
                    22575,
                    23055
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 23060,
              "end": 24224,
              "loc": {
                "start": {
                  "line": 594,
                  "column": 4
                },
                "end": {
                  "line": 622,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 23067,
                "end": 23090,
                "loc": {
                  "start": {
                    "line": 594,
                    "column": 11
                  },
                  "end": {
                    "line": 594,
                    "column": 34
                  }
                },
                "name": "mixinPixelSizedGeometry"
              },
              "static": true,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 23090,
                "end": 24224,
                "loc": {
                  "start": {
                    "line": 594,
                    "column": 34
                  },
                  "end": {
                    "line": 622,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 23091,
                    "end": 23101,
                    "loc": {
                      "start": {
                        "line": 594,
                        "column": 35
                      },
                      "end": {
                        "line": 594,
                        "column": 45
                      }
                    },
                    "name": "pixelSizes"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 23103,
                  "end": 24224,
                  "loc": {
                    "start": {
                      "line": 594,
                      "column": 47
                    },
                    "end": {
                      "line": 622,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 23113,
                      "end": 23251,
                      "loc": {
                        "start": {
                          "line": 595,
                          "column": 8
                        },
                        "end": {
                          "line": 598,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 23117,
                        "end": 23150,
                        "loc": {
                          "start": {
                            "line": 595,
                            "column": 12
                          },
                          "end": {
                            "line": 595,
                            "column": 45
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "BinaryExpression",
                          "start": 23119,
                          "end": 23149,
                          "loc": {
                            "start": {
                              "line": 595,
                              "column": 14
                            },
                            "end": {
                              "line": 595,
                              "column": 44
                            }
                          },
                          "left": {
                            "type": "ThisExpression",
                            "start": 23119,
                            "end": 23123,
                            "loc": {
                              "start": {
                                "line": 595,
                                "column": 14
                              },
                              "end": {
                                "line": 595,
                                "column": 18
                              }
                            }
                          },
                          "operator": "instanceof",
                          "right": {
                            "type": "MemberExpression",
                            "start": 23135,
                            "end": 23149,
                            "loc": {
                              "start": {
                                "line": 595,
                                "column": 30
                              },
                              "end": {
                                "line": 595,
                                "column": 44
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 23135,
                              "end": 23140,
                              "loc": {
                                "start": {
                                  "line": 595,
                                  "column": 30
                                },
                                "end": {
                                  "line": 595,
                                  "column": 35
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 23141,
                              "end": 23149,
                              "loc": {
                                "start": {
                                  "line": 595,
                                  "column": 36
                                },
                                "end": {
                                  "line": 595,
                                  "column": 44
                                }
                              },
                              "name": "Object3D"
                            },
                            "computed": false
                          },
                          "parenthesizedExpression": true
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 23152,
                        "end": 23251,
                        "loc": {
                          "start": {
                            "line": 595,
                            "column": 47
                          },
                          "end": {
                            "line": 598,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 23166,
                            "end": 23221,
                            "loc": {
                              "start": {
                                "line": 596,
                                "column": 12
                              },
                              "end": {
                                "line": 596,
                                "column": 67
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 23166,
                              "end": 23220,
                              "loc": {
                                "start": {
                                  "line": 596,
                                  "column": 12
                                },
                                "end": {
                                  "line": 596,
                                  "column": 66
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 23166,
                                "end": 23178,
                                "loc": {
                                  "start": {
                                    "line": 596,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 596,
                                    "column": 24
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 23166,
                                  "end": 23173,
                                  "loc": {
                                    "start": {
                                      "line": 596,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 596,
                                      "column": 19
                                    }
                                  },
                                  "name": "console"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 23174,
                                  "end": 23178,
                                  "loc": {
                                    "start": {
                                      "line": 596,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 596,
                                      "column": 24
                                    }
                                  },
                                  "name": "warn"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 23179,
                                  "end": 23219,
                                  "loc": {
                                    "start": {
                                      "line": 596,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 596,
                                      "column": 65
                                    }
                                  },
                                  "value": "PixelSizedGeometry: not a THREE object",
                                  "rawValue": "PixelSizedGeometry: not a THREE object",
                                  "raw": "\"PixelSizedGeometry: not a THREE object\""
                                }
                              ]
                            }
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 23234,
                            "end": 23241,
                            "loc": {
                              "start": {
                                "line": 597,
                                "column": 12
                              },
                              "end": {
                                "line": 597,
                                "column": 19
                              }
                            },
                            "argument": null
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 23260,
                      "end": 23389,
                      "loc": {
                        "start": {
                          "line": 599,
                          "column": 8
                        },
                        "end": {
                          "line": 602,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 23264,
                        "end": 23282,
                        "loc": {
                          "start": {
                            "line": 599,
                            "column": 12
                          },
                          "end": {
                            "line": 599,
                            "column": 30
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "MemberExpression",
                          "start": 23265,
                          "end": 23282,
                          "loc": {
                            "start": {
                              "line": 599,
                              "column": 13
                            },
                            "end": {
                              "line": 599,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 23265,
                            "end": 23269,
                            "loc": {
                              "start": {
                                "line": 599,
                                "column": 13
                              },
                              "end": {
                                "line": 599,
                                "column": 17
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 23270,
                            "end": 23282,
                            "loc": {
                              "start": {
                                "line": 599,
                                "column": 18
                              },
                              "end": {
                                "line": 599,
                                "column": 30
                              }
                            },
                            "name": "setGeomSizes"
                          },
                          "computed": false
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 23284,
                        "end": 23389,
                        "loc": {
                          "start": {
                            "line": 599,
                            "column": 32
                          },
                          "end": {
                            "line": 602,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 23298,
                            "end": 23359,
                            "loc": {
                              "start": {
                                "line": 600,
                                "column": 12
                              },
                              "end": {
                                "line": 600,
                                "column": 73
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 23298,
                              "end": 23358,
                              "loc": {
                                "start": {
                                  "line": 600,
                                  "column": 12
                                },
                                "end": {
                                  "line": 600,
                                  "column": 72
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 23298,
                                "end": 23310,
                                "loc": {
                                  "start": {
                                    "line": 600,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 600,
                                    "column": 24
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 23298,
                                  "end": 23305,
                                  "loc": {
                                    "start": {
                                      "line": 600,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 600,
                                      "column": 19
                                    }
                                  },
                                  "name": "console"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 23306,
                                  "end": 23310,
                                  "loc": {
                                    "start": {
                                      "line": 600,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 600,
                                      "column": 24
                                    }
                                  },
                                  "name": "warn"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 23311,
                                  "end": 23357,
                                  "loc": {
                                    "start": {
                                      "line": 600,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 600,
                                      "column": 71
                                    }
                                  },
                                  "value": "PixelSizedGeometry: missing required methods",
                                  "rawValue": "PixelSizedGeometry: missing required methods",
                                  "raw": "\"PixelSizedGeometry: missing required methods\""
                                }
                              ]
                            }
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 23372,
                            "end": 23379,
                            "loc": {
                              "start": {
                                "line": 601,
                                "column": 12
                              },
                              "end": {
                                "line": 601,
                                "column": 19
                              }
                            },
                            "argument": null
                          }
                        ],
                        "trailingComments": null
                      },
                      "alternate": null,
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " add 'pixelSizes' property (list of sizes)",
                          "start": 23399,
                          "end": 23443,
                          "loc": {
                            "start": {
                              "line": 604,
                              "column": 8
                            },
                            "end": {
                              "line": 604,
                              "column": 52
                            }
                          },
                          "range": [
                            23399,
                            23443
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 23452,
                      "end": 23486,
                      "loc": {
                        "start": {
                          "line": 605,
                          "column": 8
                        },
                        "end": {
                          "line": 605,
                          "column": 42
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 23456,
                        "end": 23467,
                        "loc": {
                          "start": {
                            "line": 605,
                            "column": 12
                          },
                          "end": {
                            "line": 605,
                            "column": 23
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 23457,
                          "end": 23467,
                          "loc": {
                            "start": {
                              "line": 605,
                              "column": 13
                            },
                            "end": {
                              "line": 605,
                              "column": 23
                            }
                          },
                          "name": "pixelSizes",
                          "leadingComments": null
                        },
                        "leadingComments": null
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 23469,
                        "end": 23486,
                        "loc": {
                          "start": {
                            "line": 605,
                            "column": 25
                          },
                          "end": {
                            "line": 605,
                            "column": 42
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 23469,
                          "end": 23485,
                          "loc": {
                            "start": {
                              "line": 605,
                              "column": 25
                            },
                            "end": {
                              "line": 605,
                              "column": 41
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 23469,
                            "end": 23479,
                            "loc": {
                              "start": {
                                "line": 605,
                                "column": 25
                              },
                              "end": {
                                "line": 605,
                                "column": 35
                              }
                            },
                            "name": "pixelSizes"
                          },
                          "right": {
                            "type": "Literal",
                            "start": 23482,
                            "end": 23485,
                            "loc": {
                              "start": {
                                "line": 605,
                                "column": 38
                              },
                              "end": {
                                "line": 605,
                                "column": 41
                              }
                            },
                            "value": 1,
                            "rawValue": 1,
                            "raw": "1.0"
                          }
                        }
                      },
                      "alternate": null,
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " add 'pixelSizes' property (list of sizes)",
                          "start": 23399,
                          "end": 23443,
                          "loc": {
                            "start": {
                              "line": 604,
                              "column": 8
                            },
                            "end": {
                              "line": 604,
                              "column": 52
                            }
                          },
                          "range": [
                            23399,
                            23443
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 23495,
                      "end": 23535,
                      "loc": {
                        "start": {
                          "line": 606,
                          "column": 8
                        },
                        "end": {
                          "line": 606,
                          "column": 48
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 23495,
                        "end": 23534,
                        "loc": {
                          "start": {
                            "line": 606,
                            "column": 8
                          },
                          "end": {
                            "line": 606,
                            "column": 47
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 23495,
                          "end": 23510,
                          "loc": {
                            "start": {
                              "line": 606,
                              "column": 8
                            },
                            "end": {
                              "line": 606,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 23495,
                            "end": 23499,
                            "loc": {
                              "start": {
                                "line": 606,
                                "column": 8
                              },
                              "end": {
                                "line": 606,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 23500,
                            "end": 23510,
                            "loc": {
                              "start": {
                                "line": 606,
                                "column": 13
                              },
                              "end": {
                                "line": 606,
                                "column": 23
                              }
                            },
                            "name": "pixelSizes"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 23513,
                          "end": 23534,
                          "loc": {
                            "start": {
                              "line": 606,
                              "column": 26
                            },
                            "end": {
                              "line": 606,
                              "column": 47
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 23513,
                            "end": 23522,
                            "loc": {
                              "start": {
                                "line": 606,
                                "column": 26
                              },
                              "end": {
                                "line": 606,
                                "column": 35
                              }
                            },
                            "object": {
                              "type": "ArrayExpression",
                              "start": 23513,
                              "end": 23515,
                              "loc": {
                                "start": {
                                  "line": 606,
                                  "column": 26
                                },
                                "end": {
                                  "line": 606,
                                  "column": 28
                                }
                              },
                              "elements": []
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 23516,
                              "end": 23522,
                              "loc": {
                                "start": {
                                  "line": 606,
                                  "column": 29
                                },
                                "end": {
                                  "line": 606,
                                  "column": 35
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 23523,
                              "end": 23533,
                              "loc": {
                                "start": {
                                  "line": 606,
                                  "column": 36
                                },
                                "end": {
                                  "line": 606,
                                  "column": 46
                                }
                              },
                              "name": "pixelSizes"
                            }
                          ]
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " add trivial method implementation (if missing)",
                          "start": 23545,
                          "end": 23594,
                          "loc": {
                            "start": {
                              "line": 608,
                              "column": 8
                            },
                            "end": {
                              "line": 608,
                              "column": 57
                            }
                          },
                          "range": [
                            23545,
                            23594
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 23603,
                      "end": 23707,
                      "loc": {
                        "start": {
                          "line": 609,
                          "column": 8
                        },
                        "end": {
                          "line": 610,
                          "column": 78
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 23607,
                        "end": 23627,
                        "loc": {
                          "start": {
                            "line": 609,
                            "column": 12
                          },
                          "end": {
                            "line": 609,
                            "column": 32
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "MemberExpression",
                          "start": 23608,
                          "end": 23627,
                          "loc": {
                            "start": {
                              "line": 609,
                              "column": 13
                            },
                            "end": {
                              "line": 609,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 23608,
                            "end": 23612,
                            "loc": {
                              "start": {
                                "line": 609,
                                "column": 13
                              },
                              "end": {
                                "line": 609,
                                "column": 17
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 23613,
                            "end": 23627,
                            "loc": {
                              "start": {
                                "line": 609,
                                "column": 18
                              },
                              "end": {
                                "line": 609,
                                "column": 32
                              }
                            },
                            "name": "getSizingPoint"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "leadingComments": null
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 23641,
                        "end": 23707,
                        "loc": {
                          "start": {
                            "line": 610,
                            "column": 12
                          },
                          "end": {
                            "line": 610,
                            "column": 78
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 23641,
                          "end": 23706,
                          "loc": {
                            "start": {
                              "line": 610,
                              "column": 12
                            },
                            "end": {
                              "line": 610,
                              "column": 77
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 23641,
                            "end": 23660,
                            "loc": {
                              "start": {
                                "line": 610,
                                "column": 12
                              },
                              "end": {
                                "line": 610,
                                "column": 31
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 23641,
                              "end": 23645,
                              "loc": {
                                "start": {
                                  "line": 610,
                                  "column": 12
                                },
                                "end": {
                                  "line": 610,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 23646,
                              "end": 23660,
                              "loc": {
                                "start": {
                                  "line": 610,
                                  "column": 17
                                },
                                "end": {
                                  "line": 610,
                                  "column": 31
                                }
                              },
                              "name": "getSizingPoint"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "FunctionExpression",
                            "start": 23663,
                            "end": 23706,
                            "loc": {
                              "start": {
                                "line": 610,
                                "column": 34
                              },
                              "end": {
                                "line": 610,
                                "column": 77
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [],
                            "body": {
                              "type": "BlockStatement",
                              "start": 23675,
                              "end": 23706,
                              "loc": {
                                "start": {
                                  "line": 610,
                                  "column": 46
                                },
                                "end": {
                                  "line": 610,
                                  "column": 77
                                }
                              },
                              "body": [
                                {
                                  "type": "ReturnStatement",
                                  "start": 23677,
                                  "end": 23704,
                                  "loc": {
                                    "start": {
                                      "line": 610,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 610,
                                      "column": 75
                                    }
                                  },
                                  "argument": {
                                    "type": "NewExpression",
                                    "start": 23684,
                                    "end": 23703,
                                    "loc": {
                                      "start": {
                                        "line": 610,
                                        "column": 55
                                      },
                                      "end": {
                                        "line": 610,
                                        "column": 74
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 23688,
                                      "end": 23701,
                                      "loc": {
                                        "start": {
                                          "line": 610,
                                          "column": 59
                                        },
                                        "end": {
                                          "line": 610,
                                          "column": 72
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 23688,
                                        "end": 23693,
                                        "loc": {
                                          "start": {
                                            "line": 610,
                                            "column": 59
                                          },
                                          "end": {
                                            "line": 610,
                                            "column": 64
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 23694,
                                        "end": 23701,
                                        "loc": {
                                          "start": {
                                            "line": 610,
                                            "column": 65
                                          },
                                          "end": {
                                            "line": 610,
                                            "column": 72
                                          }
                                        },
                                        "name": "Vector3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                }
                              ]
                            }
                          }
                        },
                        "trailingComments": null
                      },
                      "alternate": null,
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " add trivial method implementation (if missing)",
                          "start": 23545,
                          "end": 23594,
                          "loc": {
                            "start": {
                              "line": 608,
                              "column": 8
                            },
                            "end": {
                              "line": 608,
                              "column": 57
                            }
                          },
                          "range": [
                            23545,
                            23594
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " add the main method which updates geometrical sizes",
                          "start": 23717,
                          "end": 23771,
                          "loc": {
                            "start": {
                              "line": 612,
                              "column": 8
                            },
                            "end": {
                              "line": 612,
                              "column": 62
                            }
                          },
                          "range": [
                            23717,
                            23771
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 23780,
                      "end": 24218,
                      "loc": {
                        "start": {
                          "line": 613,
                          "column": 8
                        },
                        "end": {
                          "line": 621,
                          "column": 10
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 23780,
                        "end": 24217,
                        "loc": {
                          "start": {
                            "line": 613,
                            "column": 8
                          },
                          "end": {
                            "line": 621,
                            "column": 9
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 23780,
                          "end": 23796,
                          "loc": {
                            "start": {
                              "line": 613,
                              "column": 8
                            },
                            "end": {
                              "line": 613,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 23780,
                            "end": 23784,
                            "loc": {
                              "start": {
                                "line": 613,
                                "column": 8
                              },
                              "end": {
                                "line": 613,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 23785,
                            "end": 23796,
                            "loc": {
                              "start": {
                                "line": 613,
                                "column": 13
                              },
                              "end": {
                                "line": 613,
                                "column": 24
                              }
                            },
                            "name": "updateSizes"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "FunctionExpression",
                          "start": 23799,
                          "end": 24217,
                          "loc": {
                            "start": {
                              "line": 613,
                              "column": 27
                            },
                            "end": {
                              "line": 621,
                              "column": 9
                            }
                          },
                          "id": null,
                          "generator": false,
                          "expression": false,
                          "async": false,
                          "params": [
                            {
                              "type": "Identifier",
                              "start": 23808,
                              "end": 23812,
                              "loc": {
                                "start": {
                                  "line": 613,
                                  "column": 36
                                },
                                "end": {
                                  "line": 613,
                                  "column": 40
                                }
                              },
                              "name": "view"
                            }
                          ],
                          "body": {
                            "type": "BlockStatement",
                            "start": 23814,
                            "end": 24217,
                            "loc": {
                              "start": {
                                "line": 613,
                                "column": 42
                              },
                              "end": {
                                "line": 621,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "VariableDeclaration",
                                "start": 23828,
                                "end": 23860,
                                "loc": {
                                  "start": {
                                    "line": 614,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 614,
                                    "column": 44
                                  }
                                },
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "start": 23832,
                                    "end": 23859,
                                    "loc": {
                                      "start": {
                                        "line": 614,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 614,
                                        "column": 43
                                      }
                                    },
                                    "id": {
                                      "type": "Identifier",
                                      "start": 23832,
                                      "end": 23835,
                                      "loc": {
                                        "start": {
                                          "line": 614,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 614,
                                          "column": 19
                                        }
                                      },
                                      "name": "pos"
                                    },
                                    "init": {
                                      "type": "CallExpression",
                                      "start": 23838,
                                      "end": 23859,
                                      "loc": {
                                        "start": {
                                          "line": 614,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 614,
                                          "column": 43
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 23838,
                                        "end": 23857,
                                        "loc": {
                                          "start": {
                                            "line": 614,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 614,
                                            "column": 41
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 23838,
                                          "end": 23842,
                                          "loc": {
                                            "start": {
                                              "line": 614,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 614,
                                              "column": 26
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 23843,
                                          "end": 23857,
                                          "loc": {
                                            "start": {
                                              "line": 614,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 614,
                                              "column": 41
                                            }
                                          },
                                          "name": "getSizingPoint"
                                        },
                                        "computed": false
                                      },
                                      "arguments": []
                                    }
                                  }
                                ],
                                "kind": "var"
                              },
                              {
                                "type": "VariableDeclaration",
                                "start": 23873,
                                "end": 23929,
                                "loc": {
                                  "start": {
                                    "line": 615,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 615,
                                    "column": 68
                                  }
                                },
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "start": 23877,
                                    "end": 23928,
                                    "loc": {
                                      "start": {
                                        "line": 615,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 615,
                                        "column": 67
                                      }
                                    },
                                    "id": {
                                      "type": "Identifier",
                                      "start": 23877,
                                      "end": 23880,
                                      "loc": {
                                        "start": {
                                          "line": 615,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 615,
                                          "column": 19
                                        }
                                      },
                                      "name": "scr"
                                    },
                                    "init": {
                                      "type": "CallExpression",
                                      "start": 23883,
                                      "end": 23928,
                                      "loc": {
                                        "start": {
                                          "line": 615,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 615,
                                          "column": 67
                                        }
                                      },
                                      "callee": {
                                        "type": "Identifier",
                                        "start": 23883,
                                        "end": 23905,
                                        "loc": {
                                          "start": {
                                            "line": 615,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 615,
                                            "column": 44
                                          }
                                        },
                                        "name": "transformWorldToScreen"
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 23906,
                                          "end": 23910,
                                          "loc": {
                                            "start": {
                                              "line": 615,
                                              "column": 45
                                            },
                                            "end": {
                                              "line": 615,
                                              "column": 49
                                            }
                                          },
                                          "name": "view"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 23912,
                                          "end": 23915,
                                          "loc": {
                                            "start": {
                                              "line": 615,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 615,
                                              "column": 54
                                            }
                                          },
                                          "name": "pos"
                                        },
                                        {
                                          "type": "ThisExpression",
                                          "start": 23917,
                                          "end": 23921,
                                          "loc": {
                                            "start": {
                                              "line": 615,
                                              "column": 56
                                            },
                                            "end": {
                                              "line": 615,
                                              "column": 60
                                            }
                                          }
                                        },
                                        {
                                          "type": "Literal",
                                          "start": 23923,
                                          "end": 23927,
                                          "loc": {
                                            "start": {
                                              "line": 615,
                                              "column": 62
                                            },
                                            "end": {
                                              "line": 615,
                                              "column": 66
                                            }
                                          },
                                          "value": true,
                                          "rawValue": true,
                                          "raw": "true"
                                        }
                                      ]
                                    }
                                  }
                                ],
                                "kind": "var"
                              },
                              {
                                "type": "VariableDeclaration",
                                "start": 23942,
                                "end": 24004,
                                "loc": {
                                  "start": {
                                    "line": 616,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 616,
                                    "column": 74
                                  }
                                },
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "start": 23946,
                                    "end": 24003,
                                    "loc": {
                                      "start": {
                                        "line": 616,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 616,
                                        "column": 73
                                      }
                                    },
                                    "id": {
                                      "type": "Identifier",
                                      "start": 23946,
                                      "end": 23951,
                                      "loc": {
                                        "start": {
                                          "line": 616,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 616,
                                          "column": 21
                                        }
                                      },
                                      "name": "coeff"
                                    },
                                    "init": {
                                      "type": "BinaryExpression",
                                      "start": 23954,
                                      "end": 24003,
                                      "loc": {
                                        "start": {
                                          "line": 616,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 616,
                                          "column": 73
                                        }
                                      },
                                      "left": {
                                        "type": "Literal",
                                        "start": 23954,
                                        "end": 23957,
                                        "loc": {
                                          "start": {
                                            "line": 616,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 616,
                                            "column": 27
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1.0"
                                      },
                                      "operator": "/",
                                      "right": {
                                        "type": "CallExpression",
                                        "start": 23960,
                                        "end": 24003,
                                        "loc": {
                                          "start": {
                                            "line": 616,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 616,
                                            "column": 73
                                          }
                                        },
                                        "callee": {
                                          "type": "Identifier",
                                          "start": 23960,
                                          "end": 23998,
                                          "loc": {
                                            "start": {
                                              "line": 616,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 616,
                                              "column": 68
                                            }
                                          },
                                          "name": "calculateWorldToScreenRadiusMultiplier"
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 23999,
                                            "end": 24002,
                                            "loc": {
                                              "start": {
                                                "line": 616,
                                                "column": 69
                                              },
                                              "end": {
                                                "line": 616,
                                                "column": 72
                                              }
                                            },
                                            "name": "scr"
                                          }
                                        ]
                                      }
                                    }
                                  }
                                ],
                                "kind": "var"
                              },
                              {
                                "type": "VariableDeclaration",
                                "start": 24017,
                                "end": 24054,
                                "loc": {
                                  "start": {
                                    "line": 617,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 617,
                                    "column": 49
                                  }
                                },
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "start": 24021,
                                    "end": 24053,
                                    "loc": {
                                      "start": {
                                        "line": 617,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 617,
                                        "column": 48
                                      }
                                    },
                                    "id": {
                                      "type": "Identifier",
                                      "start": 24021,
                                      "end": 24026,
                                      "loc": {
                                        "start": {
                                          "line": 617,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 617,
                                          "column": 21
                                        }
                                      },
                                      "name": "sizes"
                                    },
                                    "init": {
                                      "type": "CallExpression",
                                      "start": 24029,
                                      "end": 24053,
                                      "loc": {
                                        "start": {
                                          "line": 617,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 617,
                                          "column": 48
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 24029,
                                        "end": 24050,
                                        "loc": {
                                          "start": {
                                            "line": 617,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 617,
                                            "column": 45
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 24029,
                                          "end": 24044,
                                          "loc": {
                                            "start": {
                                              "line": 617,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 617,
                                              "column": 39
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 24029,
                                            "end": 24033,
                                            "loc": {
                                              "start": {
                                                "line": 617,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 617,
                                                "column": 28
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 24034,
                                            "end": 24044,
                                            "loc": {
                                              "start": {
                                                "line": 617,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 617,
                                                "column": 39
                                              }
                                            },
                                            "name": "pixelSizes"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 24045,
                                          "end": 24050,
                                          "loc": {
                                            "start": {
                                              "line": 617,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 617,
                                              "column": 45
                                            }
                                          },
                                          "name": "slice"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Literal",
                                          "start": 24051,
                                          "end": 24052,
                                          "loc": {
                                            "start": {
                                              "line": 617,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 617,
                                              "column": 47
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        }
                                      ]
                                    }
                                  }
                                ],
                                "kind": "var",
                                "trailingComments": [
                                  {
                                    "type": "CommentLine",
                                    "value": "aka clone",
                                    "start": 24055,
                                    "end": 24066,
                                    "loc": {
                                      "start": {
                                        "line": 617,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 617,
                                        "column": 61
                                      }
                                    },
                                    "range": [
                                      24055,
                                      24066
                                    ]
                                  }
                                ]
                              },
                              {
                                "type": "ForStatement",
                                "start": 24079,
                                "end": 24169,
                                "loc": {
                                  "start": {
                                    "line": 618,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 619,
                                    "column": 44
                                  }
                                },
                                "init": {
                                  "type": "VariableDeclaration",
                                  "start": 24084,
                                  "end": 24111,
                                  "loc": {
                                    "start": {
                                      "line": 618,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 618,
                                      "column": 44
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 24088,
                                      "end": 24093,
                                      "loc": {
                                        "start": {
                                          "line": 618,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 618,
                                          "column": 26
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 24088,
                                        "end": 24089,
                                        "loc": {
                                          "start": {
                                            "line": 618,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 618,
                                            "column": 22
                                          }
                                        },
                                        "name": "i",
                                        "leadingComments": null
                                      },
                                      "init": {
                                        "type": "Literal",
                                        "start": 24092,
                                        "end": 24093,
                                        "loc": {
                                          "start": {
                                            "line": 618,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 618,
                                            "column": 26
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "leadingComments": null
                                    },
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 24095,
                                      "end": 24111,
                                      "loc": {
                                        "start": {
                                          "line": 618,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 618,
                                          "column": 44
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 24095,
                                        "end": 24096,
                                        "loc": {
                                          "start": {
                                            "line": 618,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 618,
                                            "column": 29
                                          }
                                        },
                                        "name": "l"
                                      },
                                      "init": {
                                        "type": "MemberExpression",
                                        "start": 24099,
                                        "end": 24111,
                                        "loc": {
                                          "start": {
                                            "line": 618,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 618,
                                            "column": 44
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 24099,
                                          "end": 24104,
                                          "loc": {
                                            "start": {
                                              "line": 618,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 618,
                                              "column": 37
                                            }
                                          },
                                          "name": "sizes"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 24105,
                                          "end": 24111,
                                          "loc": {
                                            "start": {
                                              "line": 618,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 618,
                                              "column": 44
                                            }
                                          },
                                          "name": "length"
                                        },
                                        "computed": false
                                      }
                                    }
                                  ],
                                  "kind": "var",
                                  "leadingComments": null
                                },
                                "test": {
                                  "type": "BinaryExpression",
                                  "start": 24113,
                                  "end": 24118,
                                  "loc": {
                                    "start": {
                                      "line": 618,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 618,
                                      "column": 51
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 24113,
                                    "end": 24114,
                                    "loc": {
                                      "start": {
                                        "line": 618,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 618,
                                        "column": 47
                                      }
                                    },
                                    "name": "i"
                                  },
                                  "operator": "<",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 24117,
                                    "end": 24118,
                                    "loc": {
                                      "start": {
                                        "line": 618,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 618,
                                        "column": 51
                                      }
                                    },
                                    "name": "l"
                                  }
                                },
                                "update": {
                                  "type": "UpdateExpression",
                                  "start": 24120,
                                  "end": 24123,
                                  "loc": {
                                    "start": {
                                      "line": 618,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 618,
                                      "column": 56
                                    }
                                  },
                                  "operator": "++",
                                  "prefix": false,
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 24120,
                                    "end": 24121,
                                    "loc": {
                                      "start": {
                                        "line": 618,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 618,
                                        "column": 54
                                      }
                                    },
                                    "name": "i"
                                  }
                                },
                                "body": {
                                  "type": "ExpressionStatement",
                                  "start": 24141,
                                  "end": 24169,
                                  "loc": {
                                    "start": {
                                      "line": 619,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 619,
                                      "column": 44
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 24141,
                                    "end": 24168,
                                    "loc": {
                                      "start": {
                                        "line": 619,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 619,
                                        "column": 43
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 24141,
                                      "end": 24149,
                                      "loc": {
                                        "start": {
                                          "line": 619,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 619,
                                          "column": 24
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24141,
                                        "end": 24146,
                                        "loc": {
                                          "start": {
                                            "line": 619,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 619,
                                            "column": 21
                                          }
                                        },
                                        "name": "sizes"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24147,
                                        "end": 24148,
                                        "loc": {
                                          "start": {
                                            "line": 619,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 619,
                                            "column": 23
                                          }
                                        },
                                        "name": "i"
                                      },
                                      "computed": true
                                    },
                                    "right": {
                                      "type": "BinaryExpression",
                                      "start": 24152,
                                      "end": 24168,
                                      "loc": {
                                        "start": {
                                          "line": 619,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 619,
                                          "column": 43
                                        }
                                      },
                                      "left": {
                                        "type": "MemberExpression",
                                        "start": 24152,
                                        "end": 24160,
                                        "loc": {
                                          "start": {
                                            "line": 619,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 619,
                                            "column": 35
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 24152,
                                          "end": 24157,
                                          "loc": {
                                            "start": {
                                              "line": 619,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 619,
                                              "column": 32
                                            }
                                          },
                                          "name": "sizes"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 24158,
                                          "end": 24159,
                                          "loc": {
                                            "start": {
                                              "line": 619,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 619,
                                              "column": 34
                                            }
                                          },
                                          "name": "i"
                                        },
                                        "computed": true
                                      },
                                      "operator": "*",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 24163,
                                        "end": 24168,
                                        "loc": {
                                          "start": {
                                            "line": 619,
                                            "column": 38
                                          },
                                          "end": {
                                            "line": 619,
                                            "column": 43
                                          }
                                        },
                                        "name": "coeff"
                                      }
                                    }
                                  }
                                },
                                "leadingComments": [
                                  {
                                    "type": "CommentLine",
                                    "value": "aka clone",
                                    "start": 24055,
                                    "end": 24066,
                                    "loc": {
                                      "start": {
                                        "line": 617,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 617,
                                        "column": 61
                                      }
                                    },
                                    "range": [
                                      24055,
                                      24066
                                    ]
                                  }
                                ]
                              },
                              {
                                "type": "ExpressionStatement",
                                "start": 24182,
                                "end": 24207,
                                "loc": {
                                  "start": {
                                    "line": 620,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 620,
                                    "column": 37
                                  }
                                },
                                "expression": {
                                  "type": "CallExpression",
                                  "start": 24182,
                                  "end": 24206,
                                  "loc": {
                                    "start": {
                                      "line": 620,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 620,
                                      "column": 36
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 24182,
                                    "end": 24199,
                                    "loc": {
                                      "start": {
                                        "line": 620,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 620,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 24182,
                                      "end": 24186,
                                      "loc": {
                                        "start": {
                                          "line": 620,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 620,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 24187,
                                      "end": 24199,
                                      "loc": {
                                        "start": {
                                          "line": 620,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 620,
                                          "column": 29
                                        }
                                      },
                                      "name": "setGeomSizes"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 24200,
                                      "end": 24205,
                                      "loc": {
                                        "start": {
                                          "line": 620,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 620,
                                          "column": 35
                                        }
                                      },
                                      "name": "sizes"
                                    }
                                  ]
                                }
                              }
                            ]
                          }
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " add the main method which updates geometrical sizes",
                          "start": 23717,
                          "end": 23771,
                          "loc": {
                            "start": {
                              "line": 612,
                              "column": 8
                            },
                            "end": {
                              "line": 612,
                              "column": 62
                            }
                          },
                          "range": [
                            23717,
                            23771
                          ]
                        }
                      ]
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "Block",
                  "value": "*\n     * A mixin which adds capability of specifying sizes in screen pixels.\n     * All sizes are kept in a single list 'pixelSizes'.\n     * Method 'updateSizes' is added: it should be called by user when camera/size changes.\n     * It passes geometrical sizes (in local object space) to method 'setGeomSizes'.\n     * If 'getSizingPoint' method is present in class, it is called to get\n     * calibrating position in local space of the object (otherwise origin is used).\n     ",
                  "start": 22575,
                  "end": 23055,
                  "loc": {
                    "start": {
                      "line": 586,
                      "column": 4
                    },
                    "end": {
                      "line": 593,
                      "column": 7
                    }
                  },
                  "range": [
                    22575,
                    23055
                  ]
                }
              ]
            }
          ],
          "trailingComments": null
        },
        "trailingComments": [
          {
            "type": "Block",
            "value": "\n * Transforms world coordinates into screen coordinates (possibly with derivatives).\n * Screen coordinates are relative to view region, given in pixels. (todo: more precisely?)\n * If 'localToWorld' parameter is an Object3D, then input coordinates are considered in its local space.\n * If 'withDerivs' parameter is set, then derivatives are calculated and returned.\n * @return object/dict with following members:\n *   position: Vector2 containing x and y coordinates of the 'position' point\n *   derivatives: list of three THREE.Vector2 components, showing\n *                how each input coordinate (x, y, z) influences output position on screen\n ",
            "start": 24228,
            "end": 24881,
            "loc": {
              "start": {
                "line": 625,
                "column": 0
              },
              "end": {
                "line": 634,
                "column": 3
              }
            },
            "range": [
              24228,
              24881
            ]
          }
        ],
        "leadingComments": []
      },
      "trailingComments": [
        {
          "type": "Block",
          "value": "\n * Transforms world coordinates into screen coordinates (possibly with derivatives).\n * Screen coordinates are relative to view region, given in pixels. (todo: more precisely?)\n * If 'localToWorld' parameter is an Object3D, then input coordinates are considered in its local space.\n * If 'withDerivs' parameter is set, then derivatives are calculated and returned.\n * @return object/dict with following members:\n *   position: Vector2 containing x and y coordinates of the 'position' point\n *   derivatives: list of three THREE.Vector2 components, showing\n *                how each input coordinate (x, y, z) influences output position on screen\n ",
          "start": 24228,
          "end": 24881,
          "loc": {
            "start": {
              "line": 625,
              "column": 0
            },
            "end": {
              "line": 634,
              "column": 3
            }
          },
          "range": [
            24228,
            24881
          ]
        }
      ]
    },
    {
      "type": "FunctionDeclaration",
      "start": 24882,
      "end": 27483,
      "loc": {
        "start": {
          "line": 635,
          "column": 0
        },
        "end": {
          "line": 693,
          "column": 1
        }
      },
      "id": {
        "type": "Identifier",
        "start": 24891,
        "end": 24913,
        "loc": {
          "start": {
            "line": 635,
            "column": 9
          },
          "end": {
            "line": 635,
            "column": 31
          }
        },
        "name": "transformWorldToScreen",
        "leadingComments": null
      },
      "generator": false,
      "expression": false,
      "async": false,
      "params": [
        {
          "type": "Identifier",
          "start": 24914,
          "end": 24918,
          "loc": {
            "start": {
              "line": 635,
              "column": 32
            },
            "end": {
              "line": 635,
              "column": 36
            }
          },
          "name": "view"
        },
        {
          "type": "Identifier",
          "start": 24920,
          "end": 24928,
          "loc": {
            "start": {
              "line": 635,
              "column": 38
            },
            "end": {
              "line": 635,
              "column": 46
            }
          },
          "name": "position"
        },
        {
          "type": "Identifier",
          "start": 24930,
          "end": 24942,
          "loc": {
            "start": {
              "line": 635,
              "column": 48
            },
            "end": {
              "line": 635,
              "column": 60
            }
          },
          "name": "localToWorld"
        },
        {
          "type": "Identifier",
          "start": 24944,
          "end": 24954,
          "loc": {
            "start": {
              "line": 635,
              "column": 62
            },
            "end": {
              "line": 635,
              "column": 72
            }
          },
          "name": "withDerivs"
        }
      ],
      "body": {
        "type": "BlockStatement",
        "start": 24956,
        "end": 27483,
        "loc": {
          "start": {
            "line": 635,
            "column": 74
          },
          "end": {
            "line": 693,
            "column": 1
          }
        },
        "body": [
          {
            "type": "IfStatement",
            "start": 25023,
            "end": 25165,
            "loc": {
              "start": {
                "line": 637,
                "column": 4
              },
              "end": {
                "line": 640,
                "column": 5
              }
            },
            "test": {
              "type": "BinaryExpression",
              "start": 25027,
              "end": 25065,
              "loc": {
                "start": {
                  "line": 637,
                  "column": 8
                },
                "end": {
                  "line": 637,
                  "column": 46
                }
              },
              "left": {
                "type": "Identifier",
                "start": 25027,
                "end": 25039,
                "loc": {
                  "start": {
                    "line": 637,
                    "column": 8
                  },
                  "end": {
                    "line": 637,
                    "column": 20
                  }
                },
                "name": "localToWorld",
                "leadingComments": null
              },
              "operator": "instanceof",
              "right": {
                "type": "MemberExpression",
                "start": 25051,
                "end": 25065,
                "loc": {
                  "start": {
                    "line": 637,
                    "column": 32
                  },
                  "end": {
                    "line": 637,
                    "column": 46
                  }
                },
                "object": {
                  "type": "Identifier",
                  "start": 25051,
                  "end": 25056,
                  "loc": {
                    "start": {
                      "line": 637,
                      "column": 32
                    },
                    "end": {
                      "line": 637,
                      "column": 37
                    }
                  },
                  "name": "THREE"
                },
                "property": {
                  "type": "Identifier",
                  "start": 25057,
                  "end": 25065,
                  "loc": {
                    "start": {
                      "line": 637,
                      "column": 38
                    },
                    "end": {
                      "line": 637,
                      "column": 46
                    }
                  },
                  "name": "Object3D"
                },
                "computed": false
              },
              "leadingComments": null
            },
            "consequent": {
              "type": "BlockStatement",
              "start": 25067,
              "end": 25165,
              "loc": {
                "start": {
                  "line": 637,
                  "column": 48
                },
                "end": {
                  "line": 640,
                  "column": 5
                }
              },
              "body": [
                {
                  "type": "ExpressionStatement",
                  "start": 25077,
                  "end": 25110,
                  "loc": {
                    "start": {
                      "line": 638,
                      "column": 8
                    },
                    "end": {
                      "line": 638,
                      "column": 41
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 25077,
                    "end": 25109,
                    "loc": {
                      "start": {
                        "line": 638,
                        "column": 8
                      },
                      "end": {
                        "line": 638,
                        "column": 40
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 25077,
                      "end": 25107,
                      "loc": {
                        "start": {
                          "line": 638,
                          "column": 8
                        },
                        "end": {
                          "line": 638,
                          "column": 38
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 25077,
                        "end": 25089,
                        "loc": {
                          "start": {
                            "line": 638,
                            "column": 8
                          },
                          "end": {
                            "line": 638,
                            "column": 20
                          }
                        },
                        "name": "localToWorld"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 25090,
                        "end": 25107,
                        "loc": {
                          "start": {
                            "line": 638,
                            "column": 21
                          },
                          "end": {
                            "line": 638,
                            "column": 38
                          }
                        },
                        "name": "updateMatrixWorld"
                      },
                      "computed": false
                    },
                    "arguments": []
                  }
                },
                {
                  "type": "ExpressionStatement",
                  "start": 25119,
                  "end": 25159,
                  "loc": {
                    "start": {
                      "line": 639,
                      "column": 8
                    },
                    "end": {
                      "line": 639,
                      "column": 48
                    }
                  },
                  "expression": {
                    "type": "AssignmentExpression",
                    "start": 25119,
                    "end": 25158,
                    "loc": {
                      "start": {
                        "line": 639,
                        "column": 8
                      },
                      "end": {
                        "line": 639,
                        "column": 47
                      }
                    },
                    "operator": "=",
                    "left": {
                      "type": "Identifier",
                      "start": 25119,
                      "end": 25131,
                      "loc": {
                        "start": {
                          "line": 639,
                          "column": 8
                        },
                        "end": {
                          "line": 639,
                          "column": 20
                        }
                      },
                      "name": "localToWorld"
                    },
                    "right": {
                      "type": "MemberExpression",
                      "start": 25134,
                      "end": 25158,
                      "loc": {
                        "start": {
                          "line": 639,
                          "column": 23
                        },
                        "end": {
                          "line": 639,
                          "column": 47
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 25134,
                        "end": 25146,
                        "loc": {
                          "start": {
                            "line": 639,
                            "column": 23
                          },
                          "end": {
                            "line": 639,
                            "column": 35
                          }
                        },
                        "name": "localToWorld"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 25147,
                        "end": 25158,
                        "loc": {
                          "start": {
                            "line": 639,
                            "column": 36
                          },
                          "end": {
                            "line": 639,
                            "column": 47
                          }
                        },
                        "name": "matrixWorld"
                      },
                      "computed": false
                    }
                  }
                }
              ]
            },
            "alternate": null,
            "leadingComments": [
              {
                "type": "CommentLine",
                "value": " extract local->world transformation used for position",
                "start": 24962,
                "end": 25018,
                "loc": {
                  "start": {
                    "line": 636,
                    "column": 4
                  },
                  "end": {
                    "line": 636,
                    "column": 60
                  }
                },
                "range": [
                  24962,
                  25018
                ]
              }
            ]
          },
          {
            "type": "IfStatement",
            "start": 25170,
            "end": 25259,
            "loc": {
              "start": {
                "line": 641,
                "column": 4
              },
              "end": {
                "line": 642,
                "column": 43
              }
            },
            "test": {
              "type": "UnaryExpression",
              "start": 25174,
              "end": 25214,
              "loc": {
                "start": {
                  "line": 641,
                  "column": 8
                },
                "end": {
                  "line": 641,
                  "column": 48
                }
              },
              "operator": "!",
              "prefix": true,
              "argument": {
                "type": "BinaryExpression",
                "start": 25176,
                "end": 25213,
                "loc": {
                  "start": {
                    "line": 641,
                    "column": 10
                  },
                  "end": {
                    "line": 641,
                    "column": 47
                  }
                },
                "left": {
                  "type": "Identifier",
                  "start": 25176,
                  "end": 25188,
                  "loc": {
                    "start": {
                      "line": 641,
                      "column": 10
                    },
                    "end": {
                      "line": 641,
                      "column": 22
                    }
                  },
                  "name": "localToWorld"
                },
                "operator": "instanceof",
                "right": {
                  "type": "MemberExpression",
                  "start": 25200,
                  "end": 25213,
                  "loc": {
                    "start": {
                      "line": 641,
                      "column": 34
                    },
                    "end": {
                      "line": 641,
                      "column": 47
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 25200,
                    "end": 25205,
                    "loc": {
                      "start": {
                        "line": 641,
                        "column": 34
                      },
                      "end": {
                        "line": 641,
                        "column": 39
                      }
                    },
                    "name": "THREE"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 25206,
                    "end": 25213,
                    "loc": {
                      "start": {
                        "line": 641,
                        "column": 40
                      },
                      "end": {
                        "line": 641,
                        "column": 47
                      }
                    },
                    "name": "Matrix4"
                  },
                  "computed": false
                },
                "parenthesizedExpression": true
              }
            },
            "consequent": {
              "type": "ExpressionStatement",
              "start": 25224,
              "end": 25259,
              "loc": {
                "start": {
                  "line": 642,
                  "column": 8
                },
                "end": {
                  "line": 642,
                  "column": 43
                }
              },
              "expression": {
                "type": "AssignmentExpression",
                "start": 25224,
                "end": 25258,
                "loc": {
                  "start": {
                    "line": 642,
                    "column": 8
                  },
                  "end": {
                    "line": 642,
                    "column": 42
                  }
                },
                "operator": "=",
                "left": {
                  "type": "Identifier",
                  "start": 25224,
                  "end": 25236,
                  "loc": {
                    "start": {
                      "line": 642,
                      "column": 8
                    },
                    "end": {
                      "line": 642,
                      "column": 20
                    }
                  },
                  "name": "localToWorld"
                },
                "right": {
                  "type": "NewExpression",
                  "start": 25239,
                  "end": 25258,
                  "loc": {
                    "start": {
                      "line": 642,
                      "column": 23
                    },
                    "end": {
                      "line": 642,
                      "column": 42
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 25243,
                    "end": 25256,
                    "loc": {
                      "start": {
                        "line": 642,
                        "column": 27
                      },
                      "end": {
                        "line": 642,
                        "column": 40
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 25243,
                      "end": 25248,
                      "loc": {
                        "start": {
                          "line": 642,
                          "column": 27
                        },
                        "end": {
                          "line": 642,
                          "column": 32
                        }
                      },
                      "name": "THREE"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 25249,
                      "end": 25256,
                      "loc": {
                        "start": {
                          "line": 642,
                          "column": 33
                        },
                        "end": {
                          "line": 642,
                          "column": 40
                        }
                      },
                      "name": "Matrix4"
                    },
                    "computed": false
                  },
                  "arguments": []
                }
              },
              "trailingComments": null
            },
            "alternate": null,
            "trailingComments": [
              {
                "type": "CommentLine",
                "value": " extract and compose transformation: input coordinates -> clip coordinates",
                "start": 25265,
                "end": 25341,
                "loc": {
                  "start": {
                    "line": 644,
                    "column": 4
                  },
                  "end": {
                    "line": 644,
                    "column": 80
                  }
                },
                "range": [
                  25265,
                  25341
                ]
              }
            ]
          },
          {
            "type": "ExpressionStatement",
            "start": 25346,
            "end": 25378,
            "loc": {
              "start": {
                "line": 645,
                "column": 4
              },
              "end": {
                "line": 645,
                "column": 36
              }
            },
            "expression": {
              "type": "CallExpression",
              "start": 25346,
              "end": 25377,
              "loc": {
                "start": {
                  "line": 645,
                  "column": 4
                },
                "end": {
                  "line": 645,
                  "column": 35
                }
              },
              "callee": {
                "type": "MemberExpression",
                "start": 25346,
                "end": 25375,
                "loc": {
                  "start": {
                    "line": 645,
                    "column": 4
                  },
                  "end": {
                    "line": 645,
                    "column": 33
                  }
                },
                "object": {
                  "type": "MemberExpression",
                  "start": 25346,
                  "end": 25357,
                  "loc": {
                    "start": {
                      "line": 645,
                      "column": 4
                    },
                    "end": {
                      "line": 645,
                      "column": 15
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 25346,
                    "end": 25350,
                    "loc": {
                      "start": {
                        "line": 645,
                        "column": 4
                      },
                      "end": {
                        "line": 645,
                        "column": 8
                      }
                    },
                    "name": "view",
                    "leadingComments": null
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 25351,
                    "end": 25357,
                    "loc": {
                      "start": {
                        "line": 645,
                        "column": 9
                      },
                      "end": {
                        "line": 645,
                        "column": 15
                      }
                    },
                    "name": "camera"
                  },
                  "computed": false,
                  "leadingComments": null
                },
                "property": {
                  "type": "Identifier",
                  "start": 25358,
                  "end": 25375,
                  "loc": {
                    "start": {
                      "line": 645,
                      "column": 16
                    },
                    "end": {
                      "line": 645,
                      "column": 33
                    }
                  },
                  "name": "updateMatrixWorld"
                },
                "computed": false,
                "leadingComments": null
              },
              "arguments": [],
              "leadingComments": null
            },
            "leadingComments": [
              {
                "type": "CommentLine",
                "value": " extract and compose transformation: input coordinates -> clip coordinates",
                "start": 25265,
                "end": 25341,
                "loc": {
                  "start": {
                    "line": 644,
                    "column": 4
                  },
                  "end": {
                    "line": 644,
                    "column": 80
                  }
                },
                "range": [
                  25265,
                  25341
                ]
              }
            ]
          },
          {
            "type": "VariableDeclaration",
            "start": 25383,
            "end": 25416,
            "loc": {
              "start": {
                "line": 646,
                "column": 4
              },
              "end": {
                "line": 646,
                "column": 37
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 25387,
                "end": 25415,
                "loc": {
                  "start": {
                    "line": 646,
                    "column": 8
                  },
                  "end": {
                    "line": 646,
                    "column": 36
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 25387,
                  "end": 25393,
                  "loc": {
                    "start": {
                      "line": 646,
                      "column": 8
                    },
                    "end": {
                      "line": 646,
                      "column": 14
                    }
                  },
                  "name": "matrix"
                },
                "init": {
                  "type": "NewExpression",
                  "start": 25396,
                  "end": 25415,
                  "loc": {
                    "start": {
                      "line": 646,
                      "column": 17
                    },
                    "end": {
                      "line": 646,
                      "column": 36
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 25400,
                    "end": 25413,
                    "loc": {
                      "start": {
                        "line": 646,
                        "column": 21
                      },
                      "end": {
                        "line": 646,
                        "column": 34
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 25400,
                      "end": 25405,
                      "loc": {
                        "start": {
                          "line": 646,
                          "column": 21
                        },
                        "end": {
                          "line": 646,
                          "column": 26
                        }
                      },
                      "name": "THREE"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 25406,
                      "end": 25413,
                      "loc": {
                        "start": {
                          "line": 646,
                          "column": 27
                        },
                        "end": {
                          "line": 646,
                          "column": 34
                        }
                      },
                      "name": "Matrix4"
                    },
                    "computed": false
                  },
                  "arguments": []
                }
              }
            ],
            "kind": "var"
          },
          {
            "type": "ExpressionStatement",
            "start": 25421,
            "end": 25464,
            "loc": {
              "start": {
                "line": 647,
                "column": 4
              },
              "end": {
                "line": 647,
                "column": 47
              }
            },
            "expression": {
              "type": "CallExpression",
              "start": 25421,
              "end": 25463,
              "loc": {
                "start": {
                  "line": 647,
                  "column": 4
                },
                "end": {
                  "line": 647,
                  "column": 46
                }
              },
              "callee": {
                "type": "MemberExpression",
                "start": 25421,
                "end": 25438,
                "loc": {
                  "start": {
                    "line": 647,
                    "column": 4
                  },
                  "end": {
                    "line": 647,
                    "column": 21
                  }
                },
                "object": {
                  "type": "Identifier",
                  "start": 25421,
                  "end": 25427,
                  "loc": {
                    "start": {
                      "line": 647,
                      "column": 4
                    },
                    "end": {
                      "line": 647,
                      "column": 10
                    }
                  },
                  "name": "matrix"
                },
                "property": {
                  "type": "Identifier",
                  "start": 25428,
                  "end": 25438,
                  "loc": {
                    "start": {
                      "line": 647,
                      "column": 11
                    },
                    "end": {
                      "line": 647,
                      "column": 21
                    }
                  },
                  "name": "getInverse"
                },
                "computed": false
              },
              "arguments": [
                {
                  "type": "MemberExpression",
                  "start": 25439,
                  "end": 25462,
                  "loc": {
                    "start": {
                      "line": 647,
                      "column": 22
                    },
                    "end": {
                      "line": 647,
                      "column": 45
                    }
                  },
                  "object": {
                    "type": "MemberExpression",
                    "start": 25439,
                    "end": 25450,
                    "loc": {
                      "start": {
                        "line": 647,
                        "column": 22
                      },
                      "end": {
                        "line": 647,
                        "column": 33
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 25439,
                      "end": 25443,
                      "loc": {
                        "start": {
                          "line": 647,
                          "column": 22
                        },
                        "end": {
                          "line": 647,
                          "column": 26
                        }
                      },
                      "name": "view"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 25444,
                      "end": 25450,
                      "loc": {
                        "start": {
                          "line": 647,
                          "column": 27
                        },
                        "end": {
                          "line": 647,
                          "column": 33
                        }
                      },
                      "name": "camera"
                    },
                    "computed": false
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 25451,
                    "end": 25462,
                    "loc": {
                      "start": {
                        "line": 647,
                        "column": 34
                      },
                      "end": {
                        "line": 647,
                        "column": 45
                      }
                    },
                    "name": "matrixWorld"
                  },
                  "computed": false
                }
              ]
            },
            "trailingComments": [
              {
                "type": "CommentLine",
                "value": "modelview",
                "start": 25489,
                "end": 25500,
                "loc": {
                  "start": {
                    "line": 647,
                    "column": 72
                  },
                  "end": {
                    "line": 647,
                    "column": 83
                  }
                },
                "range": [
                  25489,
                  25500
                ]
              }
            ]
          },
          {
            "type": "ExpressionStatement",
            "start": 25505,
            "end": 25551,
            "loc": {
              "start": {
                "line": 648,
                "column": 4
              },
              "end": {
                "line": 648,
                "column": 50
              }
            },
            "expression": {
              "type": "CallExpression",
              "start": 25505,
              "end": 25550,
              "loc": {
                "start": {
                  "line": 648,
                  "column": 4
                },
                "end": {
                  "line": 648,
                  "column": 49
                }
              },
              "callee": {
                "type": "MemberExpression",
                "start": 25505,
                "end": 25528,
                "loc": {
                  "start": {
                    "line": 648,
                    "column": 4
                  },
                  "end": {
                    "line": 648,
                    "column": 27
                  }
                },
                "object": {
                  "type": "Identifier",
                  "start": 25505,
                  "end": 25511,
                  "loc": {
                    "start": {
                      "line": 648,
                      "column": 4
                    },
                    "end": {
                      "line": 648,
                      "column": 10
                    }
                  },
                  "name": "matrix",
                  "leadingComments": null
                },
                "property": {
                  "type": "Identifier",
                  "start": 25512,
                  "end": 25528,
                  "loc": {
                    "start": {
                      "line": 648,
                      "column": 11
                    },
                    "end": {
                      "line": 648,
                      "column": 27
                    }
                  },
                  "name": "multiplyMatrices"
                },
                "computed": false,
                "leadingComments": null
              },
              "arguments": [
                {
                  "type": "Identifier",
                  "start": 25529,
                  "end": 25535,
                  "loc": {
                    "start": {
                      "line": 648,
                      "column": 28
                    },
                    "end": {
                      "line": 648,
                      "column": 34
                    }
                  },
                  "name": "matrix"
                },
                {
                  "type": "Identifier",
                  "start": 25537,
                  "end": 25549,
                  "loc": {
                    "start": {
                      "line": 648,
                      "column": 36
                    },
                    "end": {
                      "line": 648,
                      "column": 48
                    }
                  },
                  "name": "localToWorld"
                }
              ],
              "leadingComments": null
            },
            "leadingComments": [
              {
                "type": "CommentLine",
                "value": "modelview",
                "start": 25489,
                "end": 25500,
                "loc": {
                  "start": {
                    "line": 647,
                    "column": 72
                  },
                  "end": {
                    "line": 647,
                    "column": 83
                  }
                },
                "range": [
                  25489,
                  25500
                ]
              }
            ],
            "trailingComments": [
              {
                "type": "CommentLine",
                "value": "transform + modelview",
                "start": 25573,
                "end": 25596,
                "loc": {
                  "start": {
                    "line": 648,
                    "column": 72
                  },
                  "end": {
                    "line": 648,
                    "column": 95
                  }
                },
                "range": [
                  25573,
                  25596
                ]
              }
            ]
          },
          {
            "type": "ExpressionStatement",
            "start": 25601,
            "end": 25663,
            "loc": {
              "start": {
                "line": 649,
                "column": 4
              },
              "end": {
                "line": 649,
                "column": 66
              }
            },
            "expression": {
              "type": "CallExpression",
              "start": 25601,
              "end": 25662,
              "loc": {
                "start": {
                  "line": 649,
                  "column": 4
                },
                "end": {
                  "line": 649,
                  "column": 65
                }
              },
              "callee": {
                "type": "MemberExpression",
                "start": 25601,
                "end": 25624,
                "loc": {
                  "start": {
                    "line": 649,
                    "column": 4
                  },
                  "end": {
                    "line": 649,
                    "column": 27
                  }
                },
                "object": {
                  "type": "Identifier",
                  "start": 25601,
                  "end": 25607,
                  "loc": {
                    "start": {
                      "line": 649,
                      "column": 4
                    },
                    "end": {
                      "line": 649,
                      "column": 10
                    }
                  },
                  "name": "matrix",
                  "leadingComments": null
                },
                "property": {
                  "type": "Identifier",
                  "start": 25608,
                  "end": 25624,
                  "loc": {
                    "start": {
                      "line": 649,
                      "column": 11
                    },
                    "end": {
                      "line": 649,
                      "column": 27
                    }
                  },
                  "name": "multiplyMatrices"
                },
                "computed": false,
                "leadingComments": null
              },
              "arguments": [
                {
                  "type": "MemberExpression",
                  "start": 25625,
                  "end": 25653,
                  "loc": {
                    "start": {
                      "line": 649,
                      "column": 28
                    },
                    "end": {
                      "line": 649,
                      "column": 56
                    }
                  },
                  "object": {
                    "type": "MemberExpression",
                    "start": 25625,
                    "end": 25636,
                    "loc": {
                      "start": {
                        "line": 649,
                        "column": 28
                      },
                      "end": {
                        "line": 649,
                        "column": 39
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 25625,
                      "end": 25629,
                      "loc": {
                        "start": {
                          "line": 649,
                          "column": 28
                        },
                        "end": {
                          "line": 649,
                          "column": 32
                        }
                      },
                      "name": "view"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 25630,
                      "end": 25636,
                      "loc": {
                        "start": {
                          "line": 649,
                          "column": 33
                        },
                        "end": {
                          "line": 649,
                          "column": 39
                        }
                      },
                      "name": "camera"
                    },
                    "computed": false
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 25637,
                    "end": 25653,
                    "loc": {
                      "start": {
                        "line": 649,
                        "column": 40
                      },
                      "end": {
                        "line": 649,
                        "column": 56
                      }
                    },
                    "name": "projectionMatrix"
                  },
                  "computed": false
                },
                {
                  "type": "Identifier",
                  "start": 25655,
                  "end": 25661,
                  "loc": {
                    "start": {
                      "line": 649,
                      "column": 58
                    },
                    "end": {
                      "line": 649,
                      "column": 64
                    }
                  },
                  "name": "matrix"
                }
              ],
              "leadingComments": null
            },
            "leadingComments": [
              {
                "type": "CommentLine",
                "value": "transform + modelview",
                "start": 25573,
                "end": 25596,
                "loc": {
                  "start": {
                    "line": 648,
                    "column": 72
                  },
                  "end": {
                    "line": 648,
                    "column": 95
                  }
                },
                "range": [
                  25573,
                  25596
                ]
              }
            ],
            "trailingComments": [
              {
                "type": "CommentLine",
                "value": "tr + mv + prj",
                "start": 25669,
                "end": 25684,
                "loc": {
                  "start": {
                    "line": 649,
                    "column": 72
                  },
                  "end": {
                    "line": 649,
                    "column": 87
                  }
                },
                "range": [
                  25669,
                  25684
                ]
              },
              {
                "type": "CommentLine",
                "value": " calculate NDC coordinates",
                "start": 25690,
                "end": 25718,
                "loc": {
                  "start": {
                    "line": 651,
                    "column": 4
                  },
                  "end": {
                    "line": 651,
                    "column": 32
                  }
                },
                "range": [
                  25690,
                  25718
                ]
              }
            ]
          },
          {
            "type": "VariableDeclaration",
            "start": 25723,
            "end": 25798,
            "loc": {
              "start": {
                "line": 652,
                "column": 4
              },
              "end": {
                "line": 652,
                "column": 79
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 25727,
                "end": 25797,
                "loc": {
                  "start": {
                    "line": 652,
                    "column": 8
                  },
                  "end": {
                    "line": 652,
                    "column": 78
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 25727,
                  "end": 25739,
                  "loc": {
                    "start": {
                      "line": 652,
                      "column": 8
                    },
                    "end": {
                      "line": 652,
                      "column": 20
                    }
                  },
                  "name": "clipPosition",
                  "leadingComments": null
                },
                "init": {
                  "type": "CallExpression",
                  "start": 25742,
                  "end": 25797,
                  "loc": {
                    "start": {
                      "line": 652,
                      "column": 23
                    },
                    "end": {
                      "line": 652,
                      "column": 78
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 25742,
                    "end": 25789,
                    "loc": {
                      "start": {
                        "line": 652,
                        "column": 23
                      },
                      "end": {
                        "line": 652,
                        "column": 70
                      }
                    },
                    "object": {
                      "type": "CallExpression",
                      "start": 25742,
                      "end": 25776,
                      "loc": {
                        "start": {
                          "line": 652,
                          "column": 23
                        },
                        "end": {
                          "line": 652,
                          "column": 57
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 25742,
                        "end": 25766,
                        "loc": {
                          "start": {
                            "line": 652,
                            "column": 23
                          },
                          "end": {
                            "line": 652,
                            "column": 47
                          }
                        },
                        "object": {
                          "type": "NewExpression",
                          "start": 25742,
                          "end": 25761,
                          "loc": {
                            "start": {
                              "line": 652,
                              "column": 23
                            },
                            "end": {
                              "line": 652,
                              "column": 42
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 25746,
                            "end": 25759,
                            "loc": {
                              "start": {
                                "line": 652,
                                "column": 27
                              },
                              "end": {
                                "line": 652,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 25746,
                              "end": 25751,
                              "loc": {
                                "start": {
                                  "line": 652,
                                  "column": 27
                                },
                                "end": {
                                  "line": 652,
                                  "column": 32
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 25752,
                              "end": 25759,
                              "loc": {
                                "start": {
                                  "line": 652,
                                  "column": 33
                                },
                                "end": {
                                  "line": 652,
                                  "column": 40
                                }
                              },
                              "name": "Vector4"
                            },
                            "computed": false
                          },
                          "arguments": []
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 25762,
                          "end": 25766,
                          "loc": {
                            "start": {
                              "line": 652,
                              "column": 43
                            },
                            "end": {
                              "line": 652,
                              "column": 47
                            }
                          },
                          "name": "copy"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 25767,
                          "end": 25775,
                          "loc": {
                            "start": {
                              "line": 652,
                              "column": 48
                            },
                            "end": {
                              "line": 652,
                              "column": 56
                            }
                          },
                          "name": "position"
                        }
                      ]
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 25777,
                      "end": 25789,
                      "loc": {
                        "start": {
                          "line": 652,
                          "column": 58
                        },
                        "end": {
                          "line": 652,
                          "column": 70
                        }
                      },
                      "name": "applyMatrix4"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 25790,
                      "end": 25796,
                      "loc": {
                        "start": {
                          "line": 652,
                          "column": 71
                        },
                        "end": {
                          "line": 652,
                          "column": 77
                        }
                      },
                      "name": "matrix"
                    }
                  ]
                },
                "leadingComments": null
              }
            ],
            "kind": "var",
            "leadingComments": [
              {
                "type": "CommentLine",
                "value": "tr + mv + prj",
                "start": 25669,
                "end": 25684,
                "loc": {
                  "start": {
                    "line": 649,
                    "column": 72
                  },
                  "end": {
                    "line": 649,
                    "column": 87
                  }
                },
                "range": [
                  25669,
                  25684
                ]
              },
              {
                "type": "CommentLine",
                "value": " calculate NDC coordinates",
                "start": 25690,
                "end": 25718,
                "loc": {
                  "start": {
                    "line": 651,
                    "column": 4
                  },
                  "end": {
                    "line": 651,
                    "column": 32
                  }
                },
                "range": [
                  25690,
                  25718
                ]
              }
            ]
          },
          {
            "type": "VariableDeclaration",
            "start": 25803,
            "end": 25835,
            "loc": {
              "start": {
                "line": 653,
                "column": 4
              },
              "end": {
                "line": 653,
                "column": 36
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 25807,
                "end": 25834,
                "loc": {
                  "start": {
                    "line": 653,
                    "column": 8
                  },
                  "end": {
                    "line": 653,
                    "column": 35
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 25807,
                  "end": 25811,
                  "loc": {
                    "start": {
                      "line": 653,
                      "column": 8
                    },
                    "end": {
                      "line": 653,
                      "column": 12
                    }
                  },
                  "name": "invW"
                },
                "init": {
                  "type": "BinaryExpression",
                  "start": 25814,
                  "end": 25834,
                  "loc": {
                    "start": {
                      "line": 653,
                      "column": 15
                    },
                    "end": {
                      "line": 653,
                      "column": 35
                    }
                  },
                  "left": {
                    "type": "Literal",
                    "start": 25814,
                    "end": 25817,
                    "loc": {
                      "start": {
                        "line": 653,
                        "column": 15
                      },
                      "end": {
                        "line": 653,
                        "column": 18
                      }
                    },
                    "value": 1,
                    "rawValue": 1,
                    "raw": "1.0"
                  },
                  "operator": "/",
                  "right": {
                    "type": "MemberExpression",
                    "start": 25820,
                    "end": 25834,
                    "loc": {
                      "start": {
                        "line": 653,
                        "column": 21
                      },
                      "end": {
                        "line": 653,
                        "column": 35
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 25820,
                      "end": 25832,
                      "loc": {
                        "start": {
                          "line": 653,
                          "column": 21
                        },
                        "end": {
                          "line": 653,
                          "column": 33
                        }
                      },
                      "name": "clipPosition"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 25833,
                      "end": 25834,
                      "loc": {
                        "start": {
                          "line": 653,
                          "column": 34
                        },
                        "end": {
                          "line": 653,
                          "column": 35
                        }
                      },
                      "name": "w"
                    },
                    "computed": false
                  }
                }
              }
            ],
            "kind": "var"
          },
          {
            "type": "VariableDeclaration",
            "start": 25840,
            "end": 25918,
            "loc": {
              "start": {
                "line": 654,
                "column": 4
              },
              "end": {
                "line": 654,
                "column": 82
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 25844,
                "end": 25917,
                "loc": {
                  "start": {
                    "line": 654,
                    "column": 8
                  },
                  "end": {
                    "line": 654,
                    "column": 81
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 25844,
                  "end": 25855,
                  "loc": {
                    "start": {
                      "line": 654,
                      "column": 8
                    },
                    "end": {
                      "line": 654,
                      "column": 19
                    }
                  },
                  "name": "ndcPosition"
                },
                "init": {
                  "type": "CallExpression",
                  "start": 25858,
                  "end": 25917,
                  "loc": {
                    "start": {
                      "line": 654,
                      "column": 22
                    },
                    "end": {
                      "line": 654,
                      "column": 81
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 25858,
                    "end": 25911,
                    "loc": {
                      "start": {
                        "line": 654,
                        "column": 22
                      },
                      "end": {
                        "line": 654,
                        "column": 75
                      }
                    },
                    "object": {
                      "type": "CallExpression",
                      "start": 25858,
                      "end": 25896,
                      "loc": {
                        "start": {
                          "line": 654,
                          "column": 22
                        },
                        "end": {
                          "line": 654,
                          "column": 60
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 25858,
                        "end": 25882,
                        "loc": {
                          "start": {
                            "line": 654,
                            "column": 22
                          },
                          "end": {
                            "line": 654,
                            "column": 46
                          }
                        },
                        "object": {
                          "type": "NewExpression",
                          "start": 25858,
                          "end": 25877,
                          "loc": {
                            "start": {
                              "line": 654,
                              "column": 22
                            },
                            "end": {
                              "line": 654,
                              "column": 41
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 25862,
                            "end": 25875,
                            "loc": {
                              "start": {
                                "line": 654,
                                "column": 26
                              },
                              "end": {
                                "line": 654,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 25862,
                              "end": 25867,
                              "loc": {
                                "start": {
                                  "line": 654,
                                  "column": 26
                                },
                                "end": {
                                  "line": 654,
                                  "column": 31
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 25868,
                              "end": 25875,
                              "loc": {
                                "start": {
                                  "line": 654,
                                  "column": 32
                                },
                                "end": {
                                  "line": 654,
                                  "column": 39
                                }
                              },
                              "name": "Vector3"
                            },
                            "computed": false
                          },
                          "arguments": []
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 25878,
                          "end": 25882,
                          "loc": {
                            "start": {
                              "line": 654,
                              "column": 42
                            },
                            "end": {
                              "line": 654,
                              "column": 46
                            }
                          },
                          "name": "copy"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 25883,
                          "end": 25895,
                          "loc": {
                            "start": {
                              "line": 654,
                              "column": 47
                            },
                            "end": {
                              "line": 654,
                              "column": 59
                            }
                          },
                          "name": "clipPosition"
                        }
                      ]
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 25897,
                      "end": 25911,
                      "loc": {
                        "start": {
                          "line": 654,
                          "column": 61
                        },
                        "end": {
                          "line": 654,
                          "column": 75
                        }
                      },
                      "name": "multiplyScalar"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 25912,
                      "end": 25916,
                      "loc": {
                        "start": {
                          "line": 654,
                          "column": 76
                        },
                        "end": {
                          "line": 654,
                          "column": 80
                        }
                      },
                      "name": "invW"
                    }
                  ]
                }
              }
            ],
            "kind": "var",
            "trailingComments": [
              {
                "type": "CommentLine",
                "value": " calculate NDC derivatives",
                "start": 25924,
                "end": 25952,
                "loc": {
                  "start": {
                    "line": 656,
                    "column": 4
                  },
                  "end": {
                    "line": 656,
                    "column": 32
                  }
                },
                "range": [
                  25924,
                  25952
                ]
              }
            ]
          },
          {
            "type": "VariableDeclaration",
            "start": 25957,
            "end": 25993,
            "loc": {
              "start": {
                "line": 657,
                "column": 4
              },
              "end": {
                "line": 657,
                "column": 40
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 25961,
                "end": 25992,
                "loc": {
                  "start": {
                    "line": 657,
                    "column": 8
                  },
                  "end": {
                    "line": 657,
                    "column": 39
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 25961,
                  "end": 25970,
                  "loc": {
                    "start": {
                      "line": 657,
                      "column": 8
                    },
                    "end": {
                      "line": 657,
                      "column": 17
                    }
                  },
                  "name": "ndcDerivs",
                  "leadingComments": null
                },
                "init": {
                  "type": "NewExpression",
                  "start": 25973,
                  "end": 25992,
                  "loc": {
                    "start": {
                      "line": 657,
                      "column": 20
                    },
                    "end": {
                      "line": 657,
                      "column": 39
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 25977,
                    "end": 25990,
                    "loc": {
                      "start": {
                        "line": 657,
                        "column": 24
                      },
                      "end": {
                        "line": 657,
                        "column": 37
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 25977,
                      "end": 25982,
                      "loc": {
                        "start": {
                          "line": 657,
                          "column": 24
                        },
                        "end": {
                          "line": 657,
                          "column": 29
                        }
                      },
                      "name": "THREE"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 25983,
                      "end": 25990,
                      "loc": {
                        "start": {
                          "line": 657,
                          "column": 30
                        },
                        "end": {
                          "line": 657,
                          "column": 37
                        }
                      },
                      "name": "Matrix4"
                    },
                    "computed": false
                  },
                  "arguments": []
                },
                "leadingComments": null
              }
            ],
            "kind": "var",
            "leadingComments": [
              {
                "type": "CommentLine",
                "value": " calculate NDC derivatives",
                "start": 25924,
                "end": 25952,
                "loc": {
                  "start": {
                    "line": 656,
                    "column": 4
                  },
                  "end": {
                    "line": 656,
                    "column": 32
                  }
                },
                "range": [
                  25924,
                  25952
                ]
              }
            ]
          },
          {
            "type": "IfStatement",
            "start": 25998,
            "end": 26536,
            "loc": {
              "start": {
                "line": 658,
                "column": 4
              },
              "end": {
                "line": 669,
                "column": 5
              }
            },
            "test": {
              "type": "Identifier",
              "start": 26002,
              "end": 26012,
              "loc": {
                "start": {
                  "line": 658,
                  "column": 8
                },
                "end": {
                  "line": 658,
                  "column": 18
                }
              },
              "name": "withDerivs"
            },
            "consequent": {
              "type": "BlockStatement",
              "start": 26014,
              "end": 26536,
              "loc": {
                "start": {
                  "line": 658,
                  "column": 20
                },
                "end": {
                  "line": 669,
                  "column": 5
                }
              },
              "body": [
                {
                  "type": "VariableDeclaration",
                  "start": 26094,
                  "end": 26140,
                  "loc": {
                    "start": {
                      "line": 660,
                      "column": 8
                    },
                    "end": {
                      "line": 660,
                      "column": 54
                    }
                  },
                  "declarations": [
                    {
                      "type": "VariableDeclarator",
                      "start": 26098,
                      "end": 26139,
                      "loc": {
                        "start": {
                          "line": 660,
                          "column": 12
                        },
                        "end": {
                          "line": 660,
                          "column": 53
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 26098,
                        "end": 26117,
                        "loc": {
                          "start": {
                            "line": 660,
                            "column": 12
                          },
                          "end": {
                            "line": 660,
                            "column": 31
                          }
                        },
                        "name": "normalizationMatrix",
                        "leadingComments": null
                      },
                      "init": {
                        "type": "NewExpression",
                        "start": 26120,
                        "end": 26139,
                        "loc": {
                          "start": {
                            "line": 660,
                            "column": 34
                          },
                          "end": {
                            "line": 660,
                            "column": 53
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 26124,
                          "end": 26137,
                          "loc": {
                            "start": {
                              "line": 660,
                              "column": 38
                            },
                            "end": {
                              "line": 660,
                              "column": 51
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 26124,
                            "end": 26129,
                            "loc": {
                              "start": {
                                "line": 660,
                                "column": 38
                              },
                              "end": {
                                "line": 660,
                                "column": 43
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 26130,
                            "end": 26137,
                            "loc": {
                              "start": {
                                "line": 660,
                                "column": 44
                              },
                              "end": {
                                "line": 660,
                                "column": 51
                              }
                            },
                            "name": "Matrix4"
                          },
                          "computed": false
                        },
                        "arguments": []
                      },
                      "leadingComments": null
                    }
                  ],
                  "kind": "var",
                  "leadingComments": [
                    {
                      "type": "CommentLine",
                      "value": " calculate Jacobian matrix of normalization (division by W)",
                      "start": 26024,
                      "end": 26085,
                      "loc": {
                        "start": {
                          "line": 659,
                          "column": 8
                        },
                        "end": {
                          "line": 659,
                          "column": 69
                        }
                      },
                      "range": [
                        26024,
                        26085
                      ]
                    }
                  ]
                },
                {
                  "type": "ExpressionStatement",
                  "start": 26149,
                  "end": 26366,
                  "loc": {
                    "start": {
                      "line": 661,
                      "column": 8
                    },
                    "end": {
                      "line": 666,
                      "column": 10
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 26149,
                    "end": 26365,
                    "loc": {
                      "start": {
                        "line": 661,
                        "column": 8
                      },
                      "end": {
                        "line": 666,
                        "column": 9
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 26149,
                      "end": 26172,
                      "loc": {
                        "start": {
                          "line": 661,
                          "column": 8
                        },
                        "end": {
                          "line": 661,
                          "column": 31
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 26149,
                        "end": 26168,
                        "loc": {
                          "start": {
                            "line": 661,
                            "column": 8
                          },
                          "end": {
                            "line": 661,
                            "column": 27
                          }
                        },
                        "name": "normalizationMatrix"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 26169,
                        "end": 26172,
                        "loc": {
                          "start": {
                            "line": 661,
                            "column": 28
                          },
                          "end": {
                            "line": 661,
                            "column": 31
                          }
                        },
                        "name": "set"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "Identifier",
                        "start": 26186,
                        "end": 26190,
                        "loc": {
                          "start": {
                            "line": 662,
                            "column": 12
                          },
                          "end": {
                            "line": 662,
                            "column": 16
                          }
                        },
                        "name": "invW"
                      },
                      {
                        "type": "Literal",
                        "start": 26192,
                        "end": 26193,
                        "loc": {
                          "start": {
                            "line": 662,
                            "column": 18
                          },
                          "end": {
                            "line": 662,
                            "column": 19
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      },
                      {
                        "type": "Literal",
                        "start": 26195,
                        "end": 26196,
                        "loc": {
                          "start": {
                            "line": 662,
                            "column": 21
                          },
                          "end": {
                            "line": 662,
                            "column": 22
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      },
                      {
                        "type": "BinaryExpression",
                        "start": 26198,
                        "end": 26225,
                        "loc": {
                          "start": {
                            "line": 662,
                            "column": 24
                          },
                          "end": {
                            "line": 662,
                            "column": 51
                          }
                        },
                        "left": {
                          "type": "BinaryExpression",
                          "start": 26198,
                          "end": 26220,
                          "loc": {
                            "start": {
                              "line": 662,
                              "column": 24
                            },
                            "end": {
                              "line": 662,
                              "column": 46
                            }
                          },
                          "left": {
                            "type": "UnaryExpression",
                            "start": 26198,
                            "end": 26213,
                            "loc": {
                              "start": {
                                "line": 662,
                                "column": 24
                              },
                              "end": {
                                "line": 662,
                                "column": 39
                              }
                            },
                            "operator": "-",
                            "prefix": true,
                            "argument": {
                              "type": "MemberExpression",
                              "start": 26199,
                              "end": 26213,
                              "loc": {
                                "start": {
                                  "line": 662,
                                  "column": 25
                                },
                                "end": {
                                  "line": 662,
                                  "column": 39
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 26199,
                                "end": 26211,
                                "loc": {
                                  "start": {
                                    "line": 662,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 662,
                                    "column": 37
                                  }
                                },
                                "name": "clipPosition"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 26212,
                                "end": 26213,
                                "loc": {
                                  "start": {
                                    "line": 662,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 662,
                                    "column": 39
                                  }
                                },
                                "name": "x"
                              },
                              "computed": false
                            }
                          },
                          "operator": "*",
                          "right": {
                            "type": "Identifier",
                            "start": 26216,
                            "end": 26220,
                            "loc": {
                              "start": {
                                "line": 662,
                                "column": 42
                              },
                              "end": {
                                "line": 662,
                                "column": 46
                              }
                            },
                            "name": "invW"
                          }
                        },
                        "operator": "*",
                        "right": {
                          "type": "Identifier",
                          "start": 26221,
                          "end": 26225,
                          "loc": {
                            "start": {
                              "line": 662,
                              "column": 47
                            },
                            "end": {
                              "line": 662,
                              "column": 51
                            }
                          },
                          "name": "invW"
                        }
                      },
                      {
                        "type": "Literal",
                        "start": 26239,
                        "end": 26240,
                        "loc": {
                          "start": {
                            "line": 663,
                            "column": 12
                          },
                          "end": {
                            "line": 663,
                            "column": 13
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      },
                      {
                        "type": "Identifier",
                        "start": 26242,
                        "end": 26246,
                        "loc": {
                          "start": {
                            "line": 663,
                            "column": 15
                          },
                          "end": {
                            "line": 663,
                            "column": 19
                          }
                        },
                        "name": "invW"
                      },
                      {
                        "type": "Literal",
                        "start": 26248,
                        "end": 26249,
                        "loc": {
                          "start": {
                            "line": 663,
                            "column": 21
                          },
                          "end": {
                            "line": 663,
                            "column": 22
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      },
                      {
                        "type": "BinaryExpression",
                        "start": 26251,
                        "end": 26278,
                        "loc": {
                          "start": {
                            "line": 663,
                            "column": 24
                          },
                          "end": {
                            "line": 663,
                            "column": 51
                          }
                        },
                        "left": {
                          "type": "BinaryExpression",
                          "start": 26251,
                          "end": 26273,
                          "loc": {
                            "start": {
                              "line": 663,
                              "column": 24
                            },
                            "end": {
                              "line": 663,
                              "column": 46
                            }
                          },
                          "left": {
                            "type": "UnaryExpression",
                            "start": 26251,
                            "end": 26266,
                            "loc": {
                              "start": {
                                "line": 663,
                                "column": 24
                              },
                              "end": {
                                "line": 663,
                                "column": 39
                              }
                            },
                            "operator": "-",
                            "prefix": true,
                            "argument": {
                              "type": "MemberExpression",
                              "start": 26252,
                              "end": 26266,
                              "loc": {
                                "start": {
                                  "line": 663,
                                  "column": 25
                                },
                                "end": {
                                  "line": 663,
                                  "column": 39
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 26252,
                                "end": 26264,
                                "loc": {
                                  "start": {
                                    "line": 663,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 663,
                                    "column": 37
                                  }
                                },
                                "name": "clipPosition"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 26265,
                                "end": 26266,
                                "loc": {
                                  "start": {
                                    "line": 663,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 663,
                                    "column": 39
                                  }
                                },
                                "name": "y"
                              },
                              "computed": false
                            }
                          },
                          "operator": "*",
                          "right": {
                            "type": "Identifier",
                            "start": 26269,
                            "end": 26273,
                            "loc": {
                              "start": {
                                "line": 663,
                                "column": 42
                              },
                              "end": {
                                "line": 663,
                                "column": 46
                              }
                            },
                            "name": "invW"
                          }
                        },
                        "operator": "*",
                        "right": {
                          "type": "Identifier",
                          "start": 26274,
                          "end": 26278,
                          "loc": {
                            "start": {
                              "line": 663,
                              "column": 47
                            },
                            "end": {
                              "line": 663,
                              "column": 51
                            }
                          },
                          "name": "invW"
                        }
                      },
                      {
                        "type": "Literal",
                        "start": 26292,
                        "end": 26293,
                        "loc": {
                          "start": {
                            "line": 664,
                            "column": 12
                          },
                          "end": {
                            "line": 664,
                            "column": 13
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      },
                      {
                        "type": "Literal",
                        "start": 26295,
                        "end": 26296,
                        "loc": {
                          "start": {
                            "line": 664,
                            "column": 15
                          },
                          "end": {
                            "line": 664,
                            "column": 16
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      },
                      {
                        "type": "Identifier",
                        "start": 26298,
                        "end": 26302,
                        "loc": {
                          "start": {
                            "line": 664,
                            "column": 18
                          },
                          "end": {
                            "line": 664,
                            "column": 22
                          }
                        },
                        "name": "invW"
                      },
                      {
                        "type": "BinaryExpression",
                        "start": 26304,
                        "end": 26331,
                        "loc": {
                          "start": {
                            "line": 664,
                            "column": 24
                          },
                          "end": {
                            "line": 664,
                            "column": 51
                          }
                        },
                        "left": {
                          "type": "BinaryExpression",
                          "start": 26304,
                          "end": 26326,
                          "loc": {
                            "start": {
                              "line": 664,
                              "column": 24
                            },
                            "end": {
                              "line": 664,
                              "column": 46
                            }
                          },
                          "left": {
                            "type": "UnaryExpression",
                            "start": 26304,
                            "end": 26319,
                            "loc": {
                              "start": {
                                "line": 664,
                                "column": 24
                              },
                              "end": {
                                "line": 664,
                                "column": 39
                              }
                            },
                            "operator": "-",
                            "prefix": true,
                            "argument": {
                              "type": "MemberExpression",
                              "start": 26305,
                              "end": 26319,
                              "loc": {
                                "start": {
                                  "line": 664,
                                  "column": 25
                                },
                                "end": {
                                  "line": 664,
                                  "column": 39
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 26305,
                                "end": 26317,
                                "loc": {
                                  "start": {
                                    "line": 664,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 664,
                                    "column": 37
                                  }
                                },
                                "name": "clipPosition"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 26318,
                                "end": 26319,
                                "loc": {
                                  "start": {
                                    "line": 664,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 664,
                                    "column": 39
                                  }
                                },
                                "name": "z"
                              },
                              "computed": false
                            }
                          },
                          "operator": "*",
                          "right": {
                            "type": "Identifier",
                            "start": 26322,
                            "end": 26326,
                            "loc": {
                              "start": {
                                "line": 664,
                                "column": 42
                              },
                              "end": {
                                "line": 664,
                                "column": 46
                              }
                            },
                            "name": "invW"
                          }
                        },
                        "operator": "*",
                        "right": {
                          "type": "Identifier",
                          "start": 26327,
                          "end": 26331,
                          "loc": {
                            "start": {
                              "line": 664,
                              "column": 47
                            },
                            "end": {
                              "line": 664,
                              "column": 51
                            }
                          },
                          "name": "invW"
                        }
                      },
                      {
                        "type": "Literal",
                        "start": 26345,
                        "end": 26346,
                        "loc": {
                          "start": {
                            "line": 665,
                            "column": 12
                          },
                          "end": {
                            "line": 665,
                            "column": 13
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      },
                      {
                        "type": "Literal",
                        "start": 26348,
                        "end": 26349,
                        "loc": {
                          "start": {
                            "line": 665,
                            "column": 15
                          },
                          "end": {
                            "line": 665,
                            "column": 16
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      },
                      {
                        "type": "Literal",
                        "start": 26351,
                        "end": 26352,
                        "loc": {
                          "start": {
                            "line": 665,
                            "column": 18
                          },
                          "end": {
                            "line": 665,
                            "column": 19
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      },
                      {
                        "type": "Literal",
                        "start": 26354,
                        "end": 26355,
                        "loc": {
                          "start": {
                            "line": 665,
                            "column": 21
                          },
                          "end": {
                            "line": 665,
                            "column": 22
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      }
                    ]
                  },
                  "trailingComments": [
                    {
                      "type": "CommentLine",
                      "value": " derivatives of NDS coordinates are obtained as transformation first, normalization then",
                      "start": 26375,
                      "end": 26465,
                      "loc": {
                        "start": {
                          "line": 667,
                          "column": 8
                        },
                        "end": {
                          "line": 667,
                          "column": 98
                        }
                      },
                      "range": [
                        26375,
                        26465
                      ]
                    }
                  ]
                },
                {
                  "type": "ExpressionStatement",
                  "start": 26474,
                  "end": 26530,
                  "loc": {
                    "start": {
                      "line": 668,
                      "column": 8
                    },
                    "end": {
                      "line": 668,
                      "column": 64
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 26474,
                    "end": 26529,
                    "loc": {
                      "start": {
                        "line": 668,
                        "column": 8
                      },
                      "end": {
                        "line": 668,
                        "column": 63
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 26474,
                      "end": 26500,
                      "loc": {
                        "start": {
                          "line": 668,
                          "column": 8
                        },
                        "end": {
                          "line": 668,
                          "column": 34
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 26474,
                        "end": 26483,
                        "loc": {
                          "start": {
                            "line": 668,
                            "column": 8
                          },
                          "end": {
                            "line": 668,
                            "column": 17
                          }
                        },
                        "name": "ndcDerivs",
                        "leadingComments": null
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 26484,
                        "end": 26500,
                        "loc": {
                          "start": {
                            "line": 668,
                            "column": 18
                          },
                          "end": {
                            "line": 668,
                            "column": 34
                          }
                        },
                        "name": "multiplyMatrices"
                      },
                      "computed": false,
                      "leadingComments": null
                    },
                    "arguments": [
                      {
                        "type": "Identifier",
                        "start": 26501,
                        "end": 26520,
                        "loc": {
                          "start": {
                            "line": 668,
                            "column": 35
                          },
                          "end": {
                            "line": 668,
                            "column": 54
                          }
                        },
                        "name": "normalizationMatrix"
                      },
                      {
                        "type": "Identifier",
                        "start": 26522,
                        "end": 26528,
                        "loc": {
                          "start": {
                            "line": 668,
                            "column": 56
                          },
                          "end": {
                            "line": 668,
                            "column": 62
                          }
                        },
                        "name": "matrix"
                      }
                    ],
                    "leadingComments": null
                  },
                  "leadingComments": [
                    {
                      "type": "CommentLine",
                      "value": " derivatives of NDS coordinates are obtained as transformation first, normalization then",
                      "start": 26375,
                      "end": 26465,
                      "loc": {
                        "start": {
                          "line": 667,
                          "column": 8
                        },
                        "end": {
                          "line": 667,
                          "column": 98
                        }
                      },
                      "range": [
                        26375,
                        26465
                      ]
                    }
                  ]
                }
              ],
              "trailingComments": null
            },
            "alternate": null,
            "trailingComments": [
              {
                "type": "CommentLine",
                "value": "TODO: is it really proper width/height to multiply?",
                "start": 26542,
                "end": 26595,
                "loc": {
                  "start": {
                    "line": 671,
                    "column": 4
                  },
                  "end": {
                    "line": 671,
                    "column": 57
                  }
                },
                "range": [
                  26542,
                  26595
                ]
              },
              {
                "type": "CommentLine",
                "value": " 1. Are there any margins outside of gl viewport?",
                "start": 26600,
                "end": 26651,
                "loc": {
                  "start": {
                    "line": 672,
                    "column": 4
                  },
                  "end": {
                    "line": 672,
                    "column": 55
                  }
                },
                "range": [
                  26600,
                  26651
                ]
              },
              {
                "type": "CommentLine",
                "value": " 2. Is viewport size always equal to these sizes?",
                "start": 26656,
                "end": 26707,
                "loc": {
                  "start": {
                    "line": 673,
                    "column": 4
                  },
                  "end": {
                    "line": 673,
                    "column": 55
                  }
                },
                "range": [
                  26656,
                  26707
                ]
              }
            ]
          },
          {
            "type": "VariableDeclaration",
            "start": 26712,
            "end": 26793,
            "loc": {
              "start": {
                "line": 674,
                "column": 4
              },
              "end": {
                "line": 674,
                "column": 85
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 26716,
                "end": 26752,
                "loc": {
                  "start": {
                    "line": 674,
                    "column": 8
                  },
                  "end": {
                    "line": 674,
                    "column": 44
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 26716,
                  "end": 26725,
                  "loc": {
                    "start": {
                      "line": 674,
                      "column": 8
                    },
                    "end": {
                      "line": 674,
                      "column": 17
                    }
                  },
                  "name": "widthHalf",
                  "leadingComments": null
                },
                "init": {
                  "type": "BinaryExpression",
                  "start": 26728,
                  "end": 26752,
                  "loc": {
                    "start": {
                      "line": 674,
                      "column": 20
                    },
                    "end": {
                      "line": 674,
                      "column": 44
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 26728,
                    "end": 26748,
                    "loc": {
                      "start": {
                        "line": 674,
                        "column": 20
                      },
                      "end": {
                        "line": 674,
                        "column": 40
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 26728,
                      "end": 26736,
                      "loc": {
                        "start": {
                          "line": 674,
                          "column": 20
                        },
                        "end": {
                          "line": 674,
                          "column": 28
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 26728,
                        "end": 26732,
                        "loc": {
                          "start": {
                            "line": 674,
                            "column": 20
                          },
                          "end": {
                            "line": 674,
                            "column": 24
                          }
                        },
                        "name": "view"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 26733,
                        "end": 26736,
                        "loc": {
                          "start": {
                            "line": 674,
                            "column": 25
                          },
                          "end": {
                            "line": 674,
                            "column": 28
                          }
                        },
                        "name": "dom"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 26737,
                      "end": 26748,
                      "loc": {
                        "start": {
                          "line": 674,
                          "column": 29
                        },
                        "end": {
                          "line": 674,
                          "column": 40
                        }
                      },
                      "name": "clientWidth"
                    },
                    "computed": false
                  },
                  "operator": "/",
                  "right": {
                    "type": "Literal",
                    "start": 26751,
                    "end": 26752,
                    "loc": {
                      "start": {
                        "line": 674,
                        "column": 43
                      },
                      "end": {
                        "line": 674,
                        "column": 44
                      }
                    },
                    "value": 2,
                    "rawValue": 2,
                    "raw": "2"
                  }
                },
                "leadingComments": null
              },
              {
                "type": "VariableDeclarator",
                "start": 26754,
                "end": 26792,
                "loc": {
                  "start": {
                    "line": 674,
                    "column": 46
                  },
                  "end": {
                    "line": 674,
                    "column": 84
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 26754,
                  "end": 26764,
                  "loc": {
                    "start": {
                      "line": 674,
                      "column": 46
                    },
                    "end": {
                      "line": 674,
                      "column": 56
                    }
                  },
                  "name": "heightHalf"
                },
                "init": {
                  "type": "BinaryExpression",
                  "start": 26767,
                  "end": 26792,
                  "loc": {
                    "start": {
                      "line": 674,
                      "column": 59
                    },
                    "end": {
                      "line": 674,
                      "column": 84
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 26767,
                    "end": 26788,
                    "loc": {
                      "start": {
                        "line": 674,
                        "column": 59
                      },
                      "end": {
                        "line": 674,
                        "column": 80
                      }
                    },
                    "object": {
                      "type": "MemberExpression",
                      "start": 26767,
                      "end": 26775,
                      "loc": {
                        "start": {
                          "line": 674,
                          "column": 59
                        },
                        "end": {
                          "line": 674,
                          "column": 67
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 26767,
                        "end": 26771,
                        "loc": {
                          "start": {
                            "line": 674,
                            "column": 59
                          },
                          "end": {
                            "line": 674,
                            "column": 63
                          }
                        },
                        "name": "view"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 26772,
                        "end": 26775,
                        "loc": {
                          "start": {
                            "line": 674,
                            "column": 64
                          },
                          "end": {
                            "line": 674,
                            "column": 67
                          }
                        },
                        "name": "dom"
                      },
                      "computed": false
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 26776,
                      "end": 26788,
                      "loc": {
                        "start": {
                          "line": 674,
                          "column": 68
                        },
                        "end": {
                          "line": 674,
                          "column": 80
                        }
                      },
                      "name": "clientHeight"
                    },
                    "computed": false
                  },
                  "operator": "/",
                  "right": {
                    "type": "Literal",
                    "start": 26791,
                    "end": 26792,
                    "loc": {
                      "start": {
                        "line": 674,
                        "column": 83
                      },
                      "end": {
                        "line": 674,
                        "column": 84
                      }
                    },
                    "value": 2,
                    "rawValue": 2,
                    "raw": "2"
                  }
                }
              }
            ],
            "kind": "var",
            "leadingComments": [
              {
                "type": "CommentLine",
                "value": "TODO: is it really proper width/height to multiply?",
                "start": 26542,
                "end": 26595,
                "loc": {
                  "start": {
                    "line": 671,
                    "column": 4
                  },
                  "end": {
                    "line": 671,
                    "column": 57
                  }
                },
                "range": [
                  26542,
                  26595
                ]
              },
              {
                "type": "CommentLine",
                "value": " 1. Are there any margins outside of gl viewport?",
                "start": 26600,
                "end": 26651,
                "loc": {
                  "start": {
                    "line": 672,
                    "column": 4
                  },
                  "end": {
                    "line": 672,
                    "column": 55
                  }
                },
                "range": [
                  26600,
                  26651
                ]
              },
              {
                "type": "CommentLine",
                "value": " 2. Is viewport size always equal to these sizes?",
                "start": 26656,
                "end": 26707,
                "loc": {
                  "start": {
                    "line": 673,
                    "column": 4
                  },
                  "end": {
                    "line": 673,
                    "column": 55
                  }
                },
                "range": [
                  26656,
                  26707
                ]
              }
            ]
          },
          {
            "type": "VariableDeclaration",
            "start": 26798,
            "end": 26841,
            "loc": {
              "start": {
                "line": 675,
                "column": 4
              },
              "end": {
                "line": 675,
                "column": 47
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 26802,
                "end": 26819,
                "loc": {
                  "start": {
                    "line": 675,
                    "column": 8
                  },
                  "end": {
                    "line": 675,
                    "column": 25
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 26802,
                  "end": 26807,
                  "loc": {
                    "start": {
                      "line": 675,
                      "column": 8
                    },
                    "end": {
                      "line": 675,
                      "column": 13
                    }
                  },
                  "name": "multX"
                },
                "init": {
                  "type": "Identifier",
                  "start": 26810,
                  "end": 26819,
                  "loc": {
                    "start": {
                      "line": 675,
                      "column": 16
                    },
                    "end": {
                      "line": 675,
                      "column": 25
                    }
                  },
                  "name": "widthHalf"
                }
              },
              {
                "type": "VariableDeclarator",
                "start": 26821,
                "end": 26840,
                "loc": {
                  "start": {
                    "line": 675,
                    "column": 27
                  },
                  "end": {
                    "line": 675,
                    "column": 46
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 26821,
                  "end": 26826,
                  "loc": {
                    "start": {
                      "line": 675,
                      "column": 27
                    },
                    "end": {
                      "line": 675,
                      "column": 32
                    }
                  },
                  "name": "multY"
                },
                "init": {
                  "type": "UnaryExpression",
                  "start": 26829,
                  "end": 26840,
                  "loc": {
                    "start": {
                      "line": 675,
                      "column": 35
                    },
                    "end": {
                      "line": 675,
                      "column": 46
                    }
                  },
                  "operator": "-",
                  "prefix": true,
                  "argument": {
                    "type": "Identifier",
                    "start": 26830,
                    "end": 26840,
                    "loc": {
                      "start": {
                        "line": 675,
                        "column": 36
                      },
                      "end": {
                        "line": 675,
                        "column": 46
                      }
                    },
                    "name": "heightHalf"
                  }
                }
              }
            ],
            "kind": "var"
          },
          {
            "type": "VariableDeclaration",
            "start": 26846,
            "end": 26886,
            "loc": {
              "start": {
                "line": 676,
                "column": 4
              },
              "end": {
                "line": 676,
                "column": 44
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 26850,
                "end": 26866,
                "loc": {
                  "start": {
                    "line": 676,
                    "column": 8
                  },
                  "end": {
                    "line": 676,
                    "column": 24
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 26850,
                  "end": 26854,
                  "loc": {
                    "start": {
                      "line": 676,
                      "column": 8
                    },
                    "end": {
                      "line": 676,
                      "column": 12
                    }
                  },
                  "name": "addX"
                },
                "init": {
                  "type": "Identifier",
                  "start": 26857,
                  "end": 26866,
                  "loc": {
                    "start": {
                      "line": 676,
                      "column": 15
                    },
                    "end": {
                      "line": 676,
                      "column": 24
                    }
                  },
                  "name": "widthHalf"
                }
              },
              {
                "type": "VariableDeclarator",
                "start": 26868,
                "end": 26885,
                "loc": {
                  "start": {
                    "line": 676,
                    "column": 26
                  },
                  "end": {
                    "line": 676,
                    "column": 43
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 26868,
                  "end": 26872,
                  "loc": {
                    "start": {
                      "line": 676,
                      "column": 26
                    },
                    "end": {
                      "line": 676,
                      "column": 30
                    }
                  },
                  "name": "addY"
                },
                "init": {
                  "type": "Identifier",
                  "start": 26875,
                  "end": 26885,
                  "loc": {
                    "start": {
                      "line": 676,
                      "column": 33
                    },
                    "end": {
                      "line": 676,
                      "column": 43
                    }
                  },
                  "name": "heightHalf"
                }
              }
            ],
            "kind": "var"
          },
          {
            "type": "VariableDeclaration",
            "start": 26892,
            "end": 26908,
            "loc": {
              "start": {
                "line": 678,
                "column": 4
              },
              "end": {
                "line": 678,
                "column": 20
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 26896,
                "end": 26907,
                "loc": {
                  "start": {
                    "line": 678,
                    "column": 8
                  },
                  "end": {
                    "line": 678,
                    "column": 19
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 26896,
                  "end": 26902,
                  "loc": {
                    "start": {
                      "line": 678,
                      "column": 8
                    },
                    "end": {
                      "line": 678,
                      "column": 14
                    }
                  },
                  "name": "result"
                },
                "init": {
                  "type": "ObjectExpression",
                  "start": 26905,
                  "end": 26907,
                  "loc": {
                    "start": {
                      "line": 678,
                      "column": 17
                    },
                    "end": {
                      "line": 678,
                      "column": 19
                    }
                  },
                  "properties": []
                }
              }
            ],
            "kind": "var",
            "trailingComments": [
              {
                "type": "CommentLine",
                "value": " calculate screen position",
                "start": 26913,
                "end": 26941,
                "loc": {
                  "start": {
                    "line": 679,
                    "column": 4
                  },
                  "end": {
                    "line": 679,
                    "column": 32
                  }
                },
                "range": [
                  26913,
                  26941
                ]
              }
            ]
          },
          {
            "type": "ExpressionStatement",
            "start": 26946,
            "end": 26984,
            "loc": {
              "start": {
                "line": 680,
                "column": 4
              },
              "end": {
                "line": 680,
                "column": 42
              }
            },
            "expression": {
              "type": "AssignmentExpression",
              "start": 26946,
              "end": 26983,
              "loc": {
                "start": {
                  "line": 680,
                  "column": 4
                },
                "end": {
                  "line": 680,
                  "column": 41
                }
              },
              "operator": "=",
              "left": {
                "type": "MemberExpression",
                "start": 26946,
                "end": 26961,
                "loc": {
                  "start": {
                    "line": 680,
                    "column": 4
                  },
                  "end": {
                    "line": 680,
                    "column": 19
                  }
                },
                "object": {
                  "type": "Identifier",
                  "start": 26946,
                  "end": 26952,
                  "loc": {
                    "start": {
                      "line": 680,
                      "column": 4
                    },
                    "end": {
                      "line": 680,
                      "column": 10
                    }
                  },
                  "name": "result",
                  "leadingComments": null
                },
                "property": {
                  "type": "Identifier",
                  "start": 26953,
                  "end": 26961,
                  "loc": {
                    "start": {
                      "line": 680,
                      "column": 11
                    },
                    "end": {
                      "line": 680,
                      "column": 19
                    }
                  },
                  "name": "position"
                },
                "computed": false,
                "leadingComments": null
              },
              "right": {
                "type": "NewExpression",
                "start": 26964,
                "end": 26983,
                "loc": {
                  "start": {
                    "line": 680,
                    "column": 22
                  },
                  "end": {
                    "line": 680,
                    "column": 41
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 26968,
                  "end": 26981,
                  "loc": {
                    "start": {
                      "line": 680,
                      "column": 26
                    },
                    "end": {
                      "line": 680,
                      "column": 39
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 26968,
                    "end": 26973,
                    "loc": {
                      "start": {
                        "line": 680,
                        "column": 26
                      },
                      "end": {
                        "line": 680,
                        "column": 31
                      }
                    },
                    "name": "THREE"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 26974,
                    "end": 26981,
                    "loc": {
                      "start": {
                        "line": 680,
                        "column": 32
                      },
                      "end": {
                        "line": 680,
                        "column": 39
                      }
                    },
                    "name": "Vector2"
                  },
                  "computed": false
                },
                "arguments": []
              },
              "leadingComments": null
            },
            "leadingComments": [
              {
                "type": "CommentLine",
                "value": " calculate screen position",
                "start": 26913,
                "end": 26941,
                "loc": {
                  "start": {
                    "line": 679,
                    "column": 4
                  },
                  "end": {
                    "line": 679,
                    "column": 32
                  }
                },
                "range": [
                  26913,
                  26941
                ]
              }
            ]
          },
          {
            "type": "ExpressionStatement",
            "start": 26989,
            "end": 27038,
            "loc": {
              "start": {
                "line": 681,
                "column": 4
              },
              "end": {
                "line": 681,
                "column": 53
              }
            },
            "expression": {
              "type": "AssignmentExpression",
              "start": 26989,
              "end": 27037,
              "loc": {
                "start": {
                  "line": 681,
                  "column": 4
                },
                "end": {
                  "line": 681,
                  "column": 52
                }
              },
              "operator": "=",
              "left": {
                "type": "MemberExpression",
                "start": 26989,
                "end": 27006,
                "loc": {
                  "start": {
                    "line": 681,
                    "column": 4
                  },
                  "end": {
                    "line": 681,
                    "column": 21
                  }
                },
                "object": {
                  "type": "MemberExpression",
                  "start": 26989,
                  "end": 27004,
                  "loc": {
                    "start": {
                      "line": 681,
                      "column": 4
                    },
                    "end": {
                      "line": 681,
                      "column": 19
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 26989,
                    "end": 26995,
                    "loc": {
                      "start": {
                        "line": 681,
                        "column": 4
                      },
                      "end": {
                        "line": 681,
                        "column": 10
                      }
                    },
                    "name": "result"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 26996,
                    "end": 27004,
                    "loc": {
                      "start": {
                        "line": 681,
                        "column": 11
                      },
                      "end": {
                        "line": 681,
                        "column": 19
                      }
                    },
                    "name": "position"
                  },
                  "computed": false
                },
                "property": {
                  "type": "Identifier",
                  "start": 27005,
                  "end": 27006,
                  "loc": {
                    "start": {
                      "line": 681,
                      "column": 20
                    },
                    "end": {
                      "line": 681,
                      "column": 21
                    }
                  },
                  "name": "x"
                },
                "computed": false
              },
              "right": {
                "type": "BinaryExpression",
                "start": 27009,
                "end": 27037,
                "loc": {
                  "start": {
                    "line": 681,
                    "column": 24
                  },
                  "end": {
                    "line": 681,
                    "column": 52
                  }
                },
                "left": {
                  "type": "BinaryExpression",
                  "start": 27009,
                  "end": 27030,
                  "loc": {
                    "start": {
                      "line": 681,
                      "column": 24
                    },
                    "end": {
                      "line": 681,
                      "column": 45
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 27009,
                    "end": 27022,
                    "loc": {
                      "start": {
                        "line": 681,
                        "column": 24
                      },
                      "end": {
                        "line": 681,
                        "column": 37
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 27009,
                      "end": 27020,
                      "loc": {
                        "start": {
                          "line": 681,
                          "column": 24
                        },
                        "end": {
                          "line": 681,
                          "column": 35
                        }
                      },
                      "name": "ndcPosition"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 27021,
                      "end": 27022,
                      "loc": {
                        "start": {
                          "line": 681,
                          "column": 36
                        },
                        "end": {
                          "line": 681,
                          "column": 37
                        }
                      },
                      "name": "x"
                    },
                    "computed": false
                  },
                  "operator": "*",
                  "right": {
                    "type": "Identifier",
                    "start": 27025,
                    "end": 27030,
                    "loc": {
                      "start": {
                        "line": 681,
                        "column": 40
                      },
                      "end": {
                        "line": 681,
                        "column": 45
                      }
                    },
                    "name": "multX"
                  }
                },
                "operator": "+",
                "right": {
                  "type": "Identifier",
                  "start": 27033,
                  "end": 27037,
                  "loc": {
                    "start": {
                      "line": 681,
                      "column": 48
                    },
                    "end": {
                      "line": 681,
                      "column": 52
                    }
                  },
                  "name": "addX"
                }
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 27043,
            "end": 27092,
            "loc": {
              "start": {
                "line": 682,
                "column": 4
              },
              "end": {
                "line": 682,
                "column": 53
              }
            },
            "expression": {
              "type": "AssignmentExpression",
              "start": 27043,
              "end": 27091,
              "loc": {
                "start": {
                  "line": 682,
                  "column": 4
                },
                "end": {
                  "line": 682,
                  "column": 52
                }
              },
              "operator": "=",
              "left": {
                "type": "MemberExpression",
                "start": 27043,
                "end": 27060,
                "loc": {
                  "start": {
                    "line": 682,
                    "column": 4
                  },
                  "end": {
                    "line": 682,
                    "column": 21
                  }
                },
                "object": {
                  "type": "MemberExpression",
                  "start": 27043,
                  "end": 27058,
                  "loc": {
                    "start": {
                      "line": 682,
                      "column": 4
                    },
                    "end": {
                      "line": 682,
                      "column": 19
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 27043,
                    "end": 27049,
                    "loc": {
                      "start": {
                        "line": 682,
                        "column": 4
                      },
                      "end": {
                        "line": 682,
                        "column": 10
                      }
                    },
                    "name": "result"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 27050,
                    "end": 27058,
                    "loc": {
                      "start": {
                        "line": 682,
                        "column": 11
                      },
                      "end": {
                        "line": 682,
                        "column": 19
                      }
                    },
                    "name": "position"
                  },
                  "computed": false
                },
                "property": {
                  "type": "Identifier",
                  "start": 27059,
                  "end": 27060,
                  "loc": {
                    "start": {
                      "line": 682,
                      "column": 20
                    },
                    "end": {
                      "line": 682,
                      "column": 21
                    }
                  },
                  "name": "y"
                },
                "computed": false
              },
              "right": {
                "type": "BinaryExpression",
                "start": 27063,
                "end": 27091,
                "loc": {
                  "start": {
                    "line": 682,
                    "column": 24
                  },
                  "end": {
                    "line": 682,
                    "column": 52
                  }
                },
                "left": {
                  "type": "BinaryExpression",
                  "start": 27063,
                  "end": 27084,
                  "loc": {
                    "start": {
                      "line": 682,
                      "column": 24
                    },
                    "end": {
                      "line": 682,
                      "column": 45
                    }
                  },
                  "left": {
                    "type": "MemberExpression",
                    "start": 27063,
                    "end": 27076,
                    "loc": {
                      "start": {
                        "line": 682,
                        "column": 24
                      },
                      "end": {
                        "line": 682,
                        "column": 37
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 27063,
                      "end": 27074,
                      "loc": {
                        "start": {
                          "line": 682,
                          "column": 24
                        },
                        "end": {
                          "line": 682,
                          "column": 35
                        }
                      },
                      "name": "ndcPosition"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 27075,
                      "end": 27076,
                      "loc": {
                        "start": {
                          "line": 682,
                          "column": 36
                        },
                        "end": {
                          "line": 682,
                          "column": 37
                        }
                      },
                      "name": "y"
                    },
                    "computed": false
                  },
                  "operator": "*",
                  "right": {
                    "type": "Identifier",
                    "start": 27079,
                    "end": 27084,
                    "loc": {
                      "start": {
                        "line": 682,
                        "column": 40
                      },
                      "end": {
                        "line": 682,
                        "column": 45
                      }
                    },
                    "name": "multY"
                  }
                },
                "operator": "+",
                "right": {
                  "type": "Identifier",
                  "start": 27087,
                  "end": 27091,
                  "loc": {
                    "start": {
                      "line": 682,
                      "column": 48
                    },
                    "end": {
                      "line": 682,
                      "column": 52
                    }
                  },
                  "name": "addY"
                }
              }
            },
            "trailingComments": [
              {
                "type": "CommentLine",
                "value": " calculate screen derivatives",
                "start": 27097,
                "end": 27128,
                "loc": {
                  "start": {
                    "line": 683,
                    "column": 4
                  },
                  "end": {
                    "line": 683,
                    "column": 35
                  }
                },
                "range": [
                  27097,
                  27128
                ]
              }
            ]
          },
          {
            "type": "IfStatement",
            "start": 27133,
            "end": 27461,
            "loc": {
              "start": {
                "line": 684,
                "column": 4
              },
              "end": {
                "line": 690,
                "column": 5
              }
            },
            "test": {
              "type": "Identifier",
              "start": 27137,
              "end": 27147,
              "loc": {
                "start": {
                  "line": 684,
                  "column": 8
                },
                "end": {
                  "line": 684,
                  "column": 18
                }
              },
              "name": "withDerivs",
              "leadingComments": null
            },
            "consequent": {
              "type": "BlockStatement",
              "start": 27149,
              "end": 27461,
              "loc": {
                "start": {
                  "line": 684,
                  "column": 20
                },
                "end": {
                  "line": 690,
                  "column": 5
                }
              },
              "body": [
                {
                  "type": "VariableDeclaration",
                  "start": 27159,
                  "end": 27199,
                  "loc": {
                    "start": {
                      "line": 685,
                      "column": 8
                    },
                    "end": {
                      "line": 685,
                      "column": 48
                    }
                  },
                  "declarations": [
                    {
                      "type": "VariableDeclarator",
                      "start": 27163,
                      "end": 27198,
                      "loc": {
                        "start": {
                          "line": 685,
                          "column": 12
                        },
                        "end": {
                          "line": 685,
                          "column": 47
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 27163,
                        "end": 27172,
                        "loc": {
                          "start": {
                            "line": 685,
                            "column": 12
                          },
                          "end": {
                            "line": 685,
                            "column": 21
                          }
                        },
                        "name": "resDerivs"
                      },
                      "init": {
                        "type": "AssignmentExpression",
                        "start": 27175,
                        "end": 27198,
                        "loc": {
                          "start": {
                            "line": 685,
                            "column": 24
                          },
                          "end": {
                            "line": 685,
                            "column": 47
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 27175,
                          "end": 27193,
                          "loc": {
                            "start": {
                              "line": 685,
                              "column": 24
                            },
                            "end": {
                              "line": 685,
                              "column": 42
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 27175,
                            "end": 27181,
                            "loc": {
                              "start": {
                                "line": 685,
                                "column": 24
                              },
                              "end": {
                                "line": 685,
                                "column": 30
                              }
                            },
                            "name": "result"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 27182,
                            "end": 27193,
                            "loc": {
                              "start": {
                                "line": 685,
                                "column": 31
                              },
                              "end": {
                                "line": 685,
                                "column": 42
                              }
                            },
                            "name": "derivatives"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "ArrayExpression",
                          "start": 27196,
                          "end": 27198,
                          "loc": {
                            "start": {
                              "line": 685,
                              "column": 45
                            },
                            "end": {
                              "line": 685,
                              "column": 47
                            }
                          },
                          "elements": []
                        }
                      }
                    }
                  ],
                  "kind": "var"
                },
                {
                  "type": "VariableDeclaration",
                  "start": 27208,
                  "end": 27236,
                  "loc": {
                    "start": {
                      "line": 686,
                      "column": 8
                    },
                    "end": {
                      "line": 686,
                      "column": 36
                    }
                  },
                  "declarations": [
                    {
                      "type": "VariableDeclarator",
                      "start": 27212,
                      "end": 27235,
                      "loc": {
                        "start": {
                          "line": 686,
                          "column": 12
                        },
                        "end": {
                          "line": 686,
                          "column": 35
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 27212,
                        "end": 27214,
                        "loc": {
                          "start": {
                            "line": 686,
                            "column": 12
                          },
                          "end": {
                            "line": 686,
                            "column": 14
                          }
                        },
                        "name": "me"
                      },
                      "init": {
                        "type": "MemberExpression",
                        "start": 27217,
                        "end": 27235,
                        "loc": {
                          "start": {
                            "line": 686,
                            "column": 17
                          },
                          "end": {
                            "line": 686,
                            "column": 35
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 27217,
                          "end": 27226,
                          "loc": {
                            "start": {
                              "line": 686,
                              "column": 17
                            },
                            "end": {
                              "line": 686,
                              "column": 26
                            }
                          },
                          "name": "ndcDerivs"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 27227,
                          "end": 27235,
                          "loc": {
                            "start": {
                              "line": 686,
                              "column": 27
                            },
                            "end": {
                              "line": 686,
                              "column": 35
                            }
                          },
                          "name": "elements"
                        },
                        "computed": false
                      }
                    }
                  ],
                  "kind": "var"
                },
                {
                  "type": "ExpressionStatement",
                  "start": 27245,
                  "end": 27309,
                  "loc": {
                    "start": {
                      "line": 687,
                      "column": 8
                    },
                    "end": {
                      "line": 687,
                      "column": 72
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 27245,
                    "end": 27308,
                    "loc": {
                      "start": {
                        "line": 687,
                        "column": 8
                      },
                      "end": {
                        "line": 687,
                        "column": 71
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 27245,
                      "end": 27259,
                      "loc": {
                        "start": {
                          "line": 687,
                          "column": 8
                        },
                        "end": {
                          "line": 687,
                          "column": 22
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 27245,
                        "end": 27254,
                        "loc": {
                          "start": {
                            "line": 687,
                            "column": 8
                          },
                          "end": {
                            "line": 687,
                            "column": 17
                          }
                        },
                        "name": "resDerivs"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 27255,
                        "end": 27259,
                        "loc": {
                          "start": {
                            "line": 687,
                            "column": 18
                          },
                          "end": {
                            "line": 687,
                            "column": 22
                          }
                        },
                        "name": "push"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "NewExpression",
                        "start": 27260,
                        "end": 27307,
                        "loc": {
                          "start": {
                            "line": 687,
                            "column": 23
                          },
                          "end": {
                            "line": 687,
                            "column": 70
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 27264,
                          "end": 27277,
                          "loc": {
                            "start": {
                              "line": 687,
                              "column": 27
                            },
                            "end": {
                              "line": 687,
                              "column": 40
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 27264,
                            "end": 27269,
                            "loc": {
                              "start": {
                                "line": 687,
                                "column": 27
                              },
                              "end": {
                                "line": 687,
                                "column": 32
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 27270,
                            "end": 27277,
                            "loc": {
                              "start": {
                                "line": 687,
                                "column": 33
                              },
                              "end": {
                                "line": 687,
                                "column": 40
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "BinaryExpression",
                            "start": 27278,
                            "end": 27291,
                            "loc": {
                              "start": {
                                "line": 687,
                                "column": 41
                              },
                              "end": {
                                "line": 687,
                                "column": 54
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 27278,
                              "end": 27283,
                              "loc": {
                                "start": {
                                  "line": 687,
                                  "column": 41
                                },
                                "end": {
                                  "line": 687,
                                  "column": 46
                                }
                              },
                              "name": "multX"
                            },
                            "operator": "*",
                            "right": {
                              "type": "MemberExpression",
                              "start": 27286,
                              "end": 27291,
                              "loc": {
                                "start": {
                                  "line": 687,
                                  "column": 49
                                },
                                "end": {
                                  "line": 687,
                                  "column": 54
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 27286,
                                "end": 27288,
                                "loc": {
                                  "start": {
                                    "line": 687,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 687,
                                    "column": 51
                                  }
                                },
                                "name": "me"
                              },
                              "property": {
                                "type": "Literal",
                                "start": 27289,
                                "end": 27290,
                                "loc": {
                                  "start": {
                                    "line": 687,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 687,
                                    "column": 53
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              "computed": true
                            }
                          },
                          {
                            "type": "BinaryExpression",
                            "start": 27293,
                            "end": 27306,
                            "loc": {
                              "start": {
                                "line": 687,
                                "column": 56
                              },
                              "end": {
                                "line": 687,
                                "column": 69
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 27293,
                              "end": 27298,
                              "loc": {
                                "start": {
                                  "line": 687,
                                  "column": 56
                                },
                                "end": {
                                  "line": 687,
                                  "column": 61
                                }
                              },
                              "name": "multY"
                            },
                            "operator": "*",
                            "right": {
                              "type": "MemberExpression",
                              "start": 27301,
                              "end": 27306,
                              "loc": {
                                "start": {
                                  "line": 687,
                                  "column": 64
                                },
                                "end": {
                                  "line": 687,
                                  "column": 69
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 27301,
                                "end": 27303,
                                "loc": {
                                  "start": {
                                    "line": 687,
                                    "column": 64
                                  },
                                  "end": {
                                    "line": 687,
                                    "column": 66
                                  }
                                },
                                "name": "me"
                              },
                              "property": {
                                "type": "Literal",
                                "start": 27304,
                                "end": 27305,
                                "loc": {
                                  "start": {
                                    "line": 687,
                                    "column": 67
                                  },
                                  "end": {
                                    "line": 687,
                                    "column": 68
                                  }
                                },
                                "value": 1,
                                "rawValue": 1,
                                "raw": "1"
                              },
                              "computed": true
                            }
                          }
                        ]
                      }
                    ]
                  }
                },
                {
                  "type": "ExpressionStatement",
                  "start": 27318,
                  "end": 27382,
                  "loc": {
                    "start": {
                      "line": 688,
                      "column": 8
                    },
                    "end": {
                      "line": 688,
                      "column": 72
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 27318,
                    "end": 27381,
                    "loc": {
                      "start": {
                        "line": 688,
                        "column": 8
                      },
                      "end": {
                        "line": 688,
                        "column": 71
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 27318,
                      "end": 27332,
                      "loc": {
                        "start": {
                          "line": 688,
                          "column": 8
                        },
                        "end": {
                          "line": 688,
                          "column": 22
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 27318,
                        "end": 27327,
                        "loc": {
                          "start": {
                            "line": 688,
                            "column": 8
                          },
                          "end": {
                            "line": 688,
                            "column": 17
                          }
                        },
                        "name": "resDerivs"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 27328,
                        "end": 27332,
                        "loc": {
                          "start": {
                            "line": 688,
                            "column": 18
                          },
                          "end": {
                            "line": 688,
                            "column": 22
                          }
                        },
                        "name": "push"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "NewExpression",
                        "start": 27333,
                        "end": 27380,
                        "loc": {
                          "start": {
                            "line": 688,
                            "column": 23
                          },
                          "end": {
                            "line": 688,
                            "column": 70
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 27337,
                          "end": 27350,
                          "loc": {
                            "start": {
                              "line": 688,
                              "column": 27
                            },
                            "end": {
                              "line": 688,
                              "column": 40
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 27337,
                            "end": 27342,
                            "loc": {
                              "start": {
                                "line": 688,
                                "column": 27
                              },
                              "end": {
                                "line": 688,
                                "column": 32
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 27343,
                            "end": 27350,
                            "loc": {
                              "start": {
                                "line": 688,
                                "column": 33
                              },
                              "end": {
                                "line": 688,
                                "column": 40
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "BinaryExpression",
                            "start": 27351,
                            "end": 27364,
                            "loc": {
                              "start": {
                                "line": 688,
                                "column": 41
                              },
                              "end": {
                                "line": 688,
                                "column": 54
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 27351,
                              "end": 27356,
                              "loc": {
                                "start": {
                                  "line": 688,
                                  "column": 41
                                },
                                "end": {
                                  "line": 688,
                                  "column": 46
                                }
                              },
                              "name": "multX"
                            },
                            "operator": "*",
                            "right": {
                              "type": "MemberExpression",
                              "start": 27359,
                              "end": 27364,
                              "loc": {
                                "start": {
                                  "line": 688,
                                  "column": 49
                                },
                                "end": {
                                  "line": 688,
                                  "column": 54
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 27359,
                                "end": 27361,
                                "loc": {
                                  "start": {
                                    "line": 688,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 688,
                                    "column": 51
                                  }
                                },
                                "name": "me"
                              },
                              "property": {
                                "type": "Literal",
                                "start": 27362,
                                "end": 27363,
                                "loc": {
                                  "start": {
                                    "line": 688,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 688,
                                    "column": 53
                                  }
                                },
                                "value": 4,
                                "rawValue": 4,
                                "raw": "4"
                              },
                              "computed": true
                            }
                          },
                          {
                            "type": "BinaryExpression",
                            "start": 27366,
                            "end": 27379,
                            "loc": {
                              "start": {
                                "line": 688,
                                "column": 56
                              },
                              "end": {
                                "line": 688,
                                "column": 69
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 27366,
                              "end": 27371,
                              "loc": {
                                "start": {
                                  "line": 688,
                                  "column": 56
                                },
                                "end": {
                                  "line": 688,
                                  "column": 61
                                }
                              },
                              "name": "multY"
                            },
                            "operator": "*",
                            "right": {
                              "type": "MemberExpression",
                              "start": 27374,
                              "end": 27379,
                              "loc": {
                                "start": {
                                  "line": 688,
                                  "column": 64
                                },
                                "end": {
                                  "line": 688,
                                  "column": 69
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 27374,
                                "end": 27376,
                                "loc": {
                                  "start": {
                                    "line": 688,
                                    "column": 64
                                  },
                                  "end": {
                                    "line": 688,
                                    "column": 66
                                  }
                                },
                                "name": "me"
                              },
                              "property": {
                                "type": "Literal",
                                "start": 27377,
                                "end": 27378,
                                "loc": {
                                  "start": {
                                    "line": 688,
                                    "column": 67
                                  },
                                  "end": {
                                    "line": 688,
                                    "column": 68
                                  }
                                },
                                "value": 5,
                                "rawValue": 5,
                                "raw": "5"
                              },
                              "computed": true
                            }
                          }
                        ]
                      }
                    ]
                  }
                },
                {
                  "type": "ExpressionStatement",
                  "start": 27391,
                  "end": 27455,
                  "loc": {
                    "start": {
                      "line": 689,
                      "column": 8
                    },
                    "end": {
                      "line": 689,
                      "column": 72
                    }
                  },
                  "expression": {
                    "type": "CallExpression",
                    "start": 27391,
                    "end": 27454,
                    "loc": {
                      "start": {
                        "line": 689,
                        "column": 8
                      },
                      "end": {
                        "line": 689,
                        "column": 71
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 27391,
                      "end": 27405,
                      "loc": {
                        "start": {
                          "line": 689,
                          "column": 8
                        },
                        "end": {
                          "line": 689,
                          "column": 22
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 27391,
                        "end": 27400,
                        "loc": {
                          "start": {
                            "line": 689,
                            "column": 8
                          },
                          "end": {
                            "line": 689,
                            "column": 17
                          }
                        },
                        "name": "resDerivs"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 27401,
                        "end": 27405,
                        "loc": {
                          "start": {
                            "line": 689,
                            "column": 18
                          },
                          "end": {
                            "line": 689,
                            "column": 22
                          }
                        },
                        "name": "push"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "NewExpression",
                        "start": 27406,
                        "end": 27453,
                        "loc": {
                          "start": {
                            "line": 689,
                            "column": 23
                          },
                          "end": {
                            "line": 689,
                            "column": 70
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 27410,
                          "end": 27423,
                          "loc": {
                            "start": {
                              "line": 689,
                              "column": 27
                            },
                            "end": {
                              "line": 689,
                              "column": 40
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 27410,
                            "end": 27415,
                            "loc": {
                              "start": {
                                "line": 689,
                                "column": 27
                              },
                              "end": {
                                "line": 689,
                                "column": 32
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 27416,
                            "end": 27423,
                            "loc": {
                              "start": {
                                "line": 689,
                                "column": 33
                              },
                              "end": {
                                "line": 689,
                                "column": 40
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "BinaryExpression",
                            "start": 27424,
                            "end": 27437,
                            "loc": {
                              "start": {
                                "line": 689,
                                "column": 41
                              },
                              "end": {
                                "line": 689,
                                "column": 54
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 27424,
                              "end": 27429,
                              "loc": {
                                "start": {
                                  "line": 689,
                                  "column": 41
                                },
                                "end": {
                                  "line": 689,
                                  "column": 46
                                }
                              },
                              "name": "multX"
                            },
                            "operator": "*",
                            "right": {
                              "type": "MemberExpression",
                              "start": 27432,
                              "end": 27437,
                              "loc": {
                                "start": {
                                  "line": 689,
                                  "column": 49
                                },
                                "end": {
                                  "line": 689,
                                  "column": 54
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 27432,
                                "end": 27434,
                                "loc": {
                                  "start": {
                                    "line": 689,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 689,
                                    "column": 51
                                  }
                                },
                                "name": "me"
                              },
                              "property": {
                                "type": "Literal",
                                "start": 27435,
                                "end": 27436,
                                "loc": {
                                  "start": {
                                    "line": 689,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 689,
                                    "column": 53
                                  }
                                },
                                "value": 8,
                                "rawValue": 8,
                                "raw": "8"
                              },
                              "computed": true
                            }
                          },
                          {
                            "type": "BinaryExpression",
                            "start": 27439,
                            "end": 27452,
                            "loc": {
                              "start": {
                                "line": 689,
                                "column": 56
                              },
                              "end": {
                                "line": 689,
                                "column": 69
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 27439,
                              "end": 27444,
                              "loc": {
                                "start": {
                                  "line": 689,
                                  "column": 56
                                },
                                "end": {
                                  "line": 689,
                                  "column": 61
                                }
                              },
                              "name": "multY"
                            },
                            "operator": "*",
                            "right": {
                              "type": "MemberExpression",
                              "start": 27447,
                              "end": 27452,
                              "loc": {
                                "start": {
                                  "line": 689,
                                  "column": 64
                                },
                                "end": {
                                  "line": 689,
                                  "column": 69
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 27447,
                                "end": 27449,
                                "loc": {
                                  "start": {
                                    "line": 689,
                                    "column": 64
                                  },
                                  "end": {
                                    "line": 689,
                                    "column": 66
                                  }
                                },
                                "name": "me"
                              },
                              "property": {
                                "type": "Literal",
                                "start": 27450,
                                "end": 27451,
                                "loc": {
                                  "start": {
                                    "line": 689,
                                    "column": 67
                                  },
                                  "end": {
                                    "line": 689,
                                    "column": 68
                                  }
                                },
                                "value": 9,
                                "rawValue": 9,
                                "raw": "9"
                              },
                              "computed": true
                            }
                          }
                        ]
                      }
                    ]
                  }
                }
              ]
            },
            "alternate": null,
            "leadingComments": [
              {
                "type": "CommentLine",
                "value": " calculate screen derivatives",
                "start": 27097,
                "end": 27128,
                "loc": {
                  "start": {
                    "line": 683,
                    "column": 4
                  },
                  "end": {
                    "line": 683,
                    "column": 35
                  }
                },
                "range": [
                  27097,
                  27128
                ]
              }
            ]
          },
          {
            "type": "ReturnStatement",
            "start": 27467,
            "end": 27481,
            "loc": {
              "start": {
                "line": 692,
                "column": 4
              },
              "end": {
                "line": 692,
                "column": 18
              }
            },
            "argument": {
              "type": "Identifier",
              "start": 27474,
              "end": 27480,
              "loc": {
                "start": {
                  "line": 692,
                  "column": 11
                },
                "end": {
                  "line": 692,
                  "column": 17
                }
              },
              "name": "result"
            }
          }
        ],
        "trailingComments": null
      },
      "leadingComments": [
        {
          "type": "Block",
          "value": "\n * Transforms world coordinates into screen coordinates (possibly with derivatives).\n * Screen coordinates are relative to view region, given in pixels. (todo: more precisely?)\n * If 'localToWorld' parameter is an Object3D, then input coordinates are considered in its local space.\n * If 'withDerivs' parameter is set, then derivatives are calculated and returned.\n * @return object/dict with following members:\n *   position: Vector2 containing x and y coordinates of the 'position' point\n *   derivatives: list of three THREE.Vector2 components, showing\n *                how each input coordinate (x, y, z) influences output position on screen\n ",
          "start": 24228,
          "end": 24881,
          "loc": {
            "start": {
              "line": 625,
              "column": 0
            },
            "end": {
              "line": 634,
              "column": 3
            }
          },
          "range": [
            24228,
            24881
          ]
        }
      ],
      "trailingComments": [
        {
          "type": "Block",
          "value": "*\n * Calculates coefficient, which allows to translate world size to screen size.\n * @param screenCoordsResult - result of method 'transformWorldToScreen' with derivatives\n * @return number alpha such that:\n *   a sphere of radius R in 3D world space corresponds to\n *   an ellipse with major radius (alpha * R) pixels on screen.\n ",
          "start": 27485,
          "end": 27820,
          "loc": {
            "start": {
              "line": 695,
              "column": 0
            },
            "end": {
              "line": 701,
              "column": 3
            }
          },
          "range": [
            27485,
            27820
          ]
        }
      ]
    },
    {
      "type": "FunctionDeclaration",
      "start": 27821,
      "end": 28645,
      "loc": {
        "start": {
          "line": 702,
          "column": 0
        },
        "end": {
          "line": 718,
          "column": 1
        }
      },
      "id": {
        "type": "Identifier",
        "start": 27830,
        "end": 27868,
        "loc": {
          "start": {
            "line": 702,
            "column": 9
          },
          "end": {
            "line": 702,
            "column": 47
          }
        },
        "name": "calculateWorldToScreenRadiusMultiplier",
        "leadingComments": null
      },
      "generator": false,
      "expression": false,
      "async": false,
      "params": [
        {
          "type": "Identifier",
          "start": 27869,
          "end": 27887,
          "loc": {
            "start": {
              "line": 702,
              "column": 48
            },
            "end": {
              "line": 702,
              "column": 66
            }
          },
          "name": "screenCoordsResult"
        }
      ],
      "body": {
        "type": "BlockStatement",
        "start": 27889,
        "end": 28645,
        "loc": {
          "start": {
            "line": 702,
            "column": 68
          },
          "end": {
            "line": 718,
            "column": 1
          }
        },
        "body": [
          {
            "type": "VariableDeclaration",
            "start": 27996,
            "end": 28040,
            "loc": {
              "start": {
                "line": 704,
                "column": 4
              },
              "end": {
                "line": 704,
                "column": 48
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 28000,
                "end": 28039,
                "loc": {
                  "start": {
                    "line": 704,
                    "column": 8
                  },
                  "end": {
                    "line": 704,
                    "column": 47
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 28000,
                  "end": 28006,
                  "loc": {
                    "start": {
                      "line": 704,
                      "column": 8
                    },
                    "end": {
                      "line": 704,
                      "column": 14
                    }
                  },
                  "name": "derivs",
                  "leadingComments": null
                },
                "init": {
                  "type": "MemberExpression",
                  "start": 28009,
                  "end": 28039,
                  "loc": {
                    "start": {
                      "line": 704,
                      "column": 17
                    },
                    "end": {
                      "line": 704,
                      "column": 47
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 28009,
                    "end": 28027,
                    "loc": {
                      "start": {
                        "line": 704,
                        "column": 17
                      },
                      "end": {
                        "line": 704,
                        "column": 35
                      }
                    },
                    "name": "screenCoordsResult"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 28028,
                    "end": 28039,
                    "loc": {
                      "start": {
                        "line": 704,
                        "column": 36
                      },
                      "end": {
                        "line": 704,
                        "column": 47
                      }
                    },
                    "name": "derivatives"
                  },
                  "computed": false
                },
                "leadingComments": null
              }
            ],
            "kind": "var",
            "leadingComments": [
              {
                "type": "CommentLine",
                "value": " Note the sought-for coeff is the norm (i.e. maximal singular value) of the derivatives matrix",
                "start": 27895,
                "end": 27991,
                "loc": {
                  "start": {
                    "line": 703,
                    "column": 4
                  },
                  "end": {
                    "line": 703,
                    "column": 100
                  }
                },
                "range": [
                  27895,
                  27991
                ]
              }
            ],
            "trailingComments": [
              {
                "type": "CommentLine",
                "value": " calculate elements of Gram matrix (i.e. A A^t)",
                "start": 28045,
                "end": 28094,
                "loc": {
                  "start": {
                    "line": 705,
                    "column": 4
                  },
                  "end": {
                    "line": 705,
                    "column": 53
                  }
                },
                "range": [
                  28045,
                  28094
                ]
              }
            ]
          },
          {
            "type": "VariableDeclaration",
            "start": 28099,
            "end": 28173,
            "loc": {
              "start": {
                "line": 706,
                "column": 4
              },
              "end": {
                "line": 706,
                "column": 78
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 28103,
                "end": 28172,
                "loc": {
                  "start": {
                    "line": 706,
                    "column": 8
                  },
                  "end": {
                    "line": 706,
                    "column": 77
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 28103,
                  "end": 28107,
                  "loc": {
                    "start": {
                      "line": 706,
                      "column": 8
                    },
                    "end": {
                      "line": 706,
                      "column": 12
                    }
                  },
                  "name": "rowX",
                  "leadingComments": null
                },
                "init": {
                  "type": "CallExpression",
                  "start": 28110,
                  "end": 28172,
                  "loc": {
                    "start": {
                      "line": 706,
                      "column": 15
                    },
                    "end": {
                      "line": 706,
                      "column": 77
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 28110,
                    "end": 28133,
                    "loc": {
                      "start": {
                        "line": 706,
                        "column": 15
                      },
                      "end": {
                        "line": 706,
                        "column": 38
                      }
                    },
                    "object": {
                      "type": "NewExpression",
                      "start": 28110,
                      "end": 28129,
                      "loc": {
                        "start": {
                          "line": 706,
                          "column": 15
                        },
                        "end": {
                          "line": 706,
                          "column": 34
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 28114,
                        "end": 28127,
                        "loc": {
                          "start": {
                            "line": 706,
                            "column": 19
                          },
                          "end": {
                            "line": 706,
                            "column": 32
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 28114,
                          "end": 28119,
                          "loc": {
                            "start": {
                              "line": 706,
                              "column": 19
                            },
                            "end": {
                              "line": 706,
                              "column": 24
                            }
                          },
                          "name": "THREE"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 28120,
                          "end": 28127,
                          "loc": {
                            "start": {
                              "line": 706,
                              "column": 25
                            },
                            "end": {
                              "line": 706,
                              "column": 32
                            }
                          },
                          "name": "Vector3"
                        },
                        "computed": false
                      },
                      "arguments": []
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 28130,
                      "end": 28133,
                      "loc": {
                        "start": {
                          "line": 706,
                          "column": 35
                        },
                        "end": {
                          "line": 706,
                          "column": 38
                        }
                      },
                      "name": "set"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "MemberExpression",
                      "start": 28134,
                      "end": 28145,
                      "loc": {
                        "start": {
                          "line": 706,
                          "column": 39
                        },
                        "end": {
                          "line": 706,
                          "column": 50
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 28134,
                        "end": 28143,
                        "loc": {
                          "start": {
                            "line": 706,
                            "column": 39
                          },
                          "end": {
                            "line": 706,
                            "column": 48
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 28134,
                          "end": 28140,
                          "loc": {
                            "start": {
                              "line": 706,
                              "column": 39
                            },
                            "end": {
                              "line": 706,
                              "column": 45
                            }
                          },
                          "name": "derivs"
                        },
                        "property": {
                          "type": "Literal",
                          "start": 28141,
                          "end": 28142,
                          "loc": {
                            "start": {
                              "line": 706,
                              "column": 46
                            },
                            "end": {
                              "line": 706,
                              "column": 47
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0"
                        },
                        "computed": true
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 28144,
                        "end": 28145,
                        "loc": {
                          "start": {
                            "line": 706,
                            "column": 49
                          },
                          "end": {
                            "line": 706,
                            "column": 50
                          }
                        },
                        "name": "x"
                      },
                      "computed": false
                    },
                    {
                      "type": "MemberExpression",
                      "start": 28147,
                      "end": 28158,
                      "loc": {
                        "start": {
                          "line": 706,
                          "column": 52
                        },
                        "end": {
                          "line": 706,
                          "column": 63
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 28147,
                        "end": 28156,
                        "loc": {
                          "start": {
                            "line": 706,
                            "column": 52
                          },
                          "end": {
                            "line": 706,
                            "column": 61
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 28147,
                          "end": 28153,
                          "loc": {
                            "start": {
                              "line": 706,
                              "column": 52
                            },
                            "end": {
                              "line": 706,
                              "column": 58
                            }
                          },
                          "name": "derivs"
                        },
                        "property": {
                          "type": "Literal",
                          "start": 28154,
                          "end": 28155,
                          "loc": {
                            "start": {
                              "line": 706,
                              "column": 59
                            },
                            "end": {
                              "line": 706,
                              "column": 60
                            }
                          },
                          "value": 1,
                          "rawValue": 1,
                          "raw": "1"
                        },
                        "computed": true
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 28157,
                        "end": 28158,
                        "loc": {
                          "start": {
                            "line": 706,
                            "column": 62
                          },
                          "end": {
                            "line": 706,
                            "column": 63
                          }
                        },
                        "name": "x"
                      },
                      "computed": false
                    },
                    {
                      "type": "MemberExpression",
                      "start": 28160,
                      "end": 28171,
                      "loc": {
                        "start": {
                          "line": 706,
                          "column": 65
                        },
                        "end": {
                          "line": 706,
                          "column": 76
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 28160,
                        "end": 28169,
                        "loc": {
                          "start": {
                            "line": 706,
                            "column": 65
                          },
                          "end": {
                            "line": 706,
                            "column": 74
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 28160,
                          "end": 28166,
                          "loc": {
                            "start": {
                              "line": 706,
                              "column": 65
                            },
                            "end": {
                              "line": 706,
                              "column": 71
                            }
                          },
                          "name": "derivs"
                        },
                        "property": {
                          "type": "Literal",
                          "start": 28167,
                          "end": 28168,
                          "loc": {
                            "start": {
                              "line": 706,
                              "column": 72
                            },
                            "end": {
                              "line": 706,
                              "column": 73
                            }
                          },
                          "value": 2,
                          "rawValue": 2,
                          "raw": "2"
                        },
                        "computed": true
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 28170,
                        "end": 28171,
                        "loc": {
                          "start": {
                            "line": 706,
                            "column": 75
                          },
                          "end": {
                            "line": 706,
                            "column": 76
                          }
                        },
                        "name": "x"
                      },
                      "computed": false
                    }
                  ]
                },
                "leadingComments": null
              }
            ],
            "kind": "var",
            "leadingComments": [
              {
                "type": "CommentLine",
                "value": " calculate elements of Gram matrix (i.e. A A^t)",
                "start": 28045,
                "end": 28094,
                "loc": {
                  "start": {
                    "line": 705,
                    "column": 4
                  },
                  "end": {
                    "line": 705,
                    "column": 53
                  }
                },
                "range": [
                  28045,
                  28094
                ]
              }
            ]
          },
          {
            "type": "VariableDeclaration",
            "start": 28178,
            "end": 28252,
            "loc": {
              "start": {
                "line": 707,
                "column": 4
              },
              "end": {
                "line": 707,
                "column": 78
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 28182,
                "end": 28251,
                "loc": {
                  "start": {
                    "line": 707,
                    "column": 8
                  },
                  "end": {
                    "line": 707,
                    "column": 77
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 28182,
                  "end": 28186,
                  "loc": {
                    "start": {
                      "line": 707,
                      "column": 8
                    },
                    "end": {
                      "line": 707,
                      "column": 12
                    }
                  },
                  "name": "rowY"
                },
                "init": {
                  "type": "CallExpression",
                  "start": 28189,
                  "end": 28251,
                  "loc": {
                    "start": {
                      "line": 707,
                      "column": 15
                    },
                    "end": {
                      "line": 707,
                      "column": 77
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 28189,
                    "end": 28212,
                    "loc": {
                      "start": {
                        "line": 707,
                        "column": 15
                      },
                      "end": {
                        "line": 707,
                        "column": 38
                      }
                    },
                    "object": {
                      "type": "NewExpression",
                      "start": 28189,
                      "end": 28208,
                      "loc": {
                        "start": {
                          "line": 707,
                          "column": 15
                        },
                        "end": {
                          "line": 707,
                          "column": 34
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 28193,
                        "end": 28206,
                        "loc": {
                          "start": {
                            "line": 707,
                            "column": 19
                          },
                          "end": {
                            "line": 707,
                            "column": 32
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 28193,
                          "end": 28198,
                          "loc": {
                            "start": {
                              "line": 707,
                              "column": 19
                            },
                            "end": {
                              "line": 707,
                              "column": 24
                            }
                          },
                          "name": "THREE"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 28199,
                          "end": 28206,
                          "loc": {
                            "start": {
                              "line": 707,
                              "column": 25
                            },
                            "end": {
                              "line": 707,
                              "column": 32
                            }
                          },
                          "name": "Vector3"
                        },
                        "computed": false
                      },
                      "arguments": []
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 28209,
                      "end": 28212,
                      "loc": {
                        "start": {
                          "line": 707,
                          "column": 35
                        },
                        "end": {
                          "line": 707,
                          "column": 38
                        }
                      },
                      "name": "set"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "MemberExpression",
                      "start": 28213,
                      "end": 28224,
                      "loc": {
                        "start": {
                          "line": 707,
                          "column": 39
                        },
                        "end": {
                          "line": 707,
                          "column": 50
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 28213,
                        "end": 28222,
                        "loc": {
                          "start": {
                            "line": 707,
                            "column": 39
                          },
                          "end": {
                            "line": 707,
                            "column": 48
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 28213,
                          "end": 28219,
                          "loc": {
                            "start": {
                              "line": 707,
                              "column": 39
                            },
                            "end": {
                              "line": 707,
                              "column": 45
                            }
                          },
                          "name": "derivs"
                        },
                        "property": {
                          "type": "Literal",
                          "start": 28220,
                          "end": 28221,
                          "loc": {
                            "start": {
                              "line": 707,
                              "column": 46
                            },
                            "end": {
                              "line": 707,
                              "column": 47
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0"
                        },
                        "computed": true
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 28223,
                        "end": 28224,
                        "loc": {
                          "start": {
                            "line": 707,
                            "column": 49
                          },
                          "end": {
                            "line": 707,
                            "column": 50
                          }
                        },
                        "name": "y"
                      },
                      "computed": false
                    },
                    {
                      "type": "MemberExpression",
                      "start": 28226,
                      "end": 28237,
                      "loc": {
                        "start": {
                          "line": 707,
                          "column": 52
                        },
                        "end": {
                          "line": 707,
                          "column": 63
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 28226,
                        "end": 28235,
                        "loc": {
                          "start": {
                            "line": 707,
                            "column": 52
                          },
                          "end": {
                            "line": 707,
                            "column": 61
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 28226,
                          "end": 28232,
                          "loc": {
                            "start": {
                              "line": 707,
                              "column": 52
                            },
                            "end": {
                              "line": 707,
                              "column": 58
                            }
                          },
                          "name": "derivs"
                        },
                        "property": {
                          "type": "Literal",
                          "start": 28233,
                          "end": 28234,
                          "loc": {
                            "start": {
                              "line": 707,
                              "column": 59
                            },
                            "end": {
                              "line": 707,
                              "column": 60
                            }
                          },
                          "value": 1,
                          "rawValue": 1,
                          "raw": "1"
                        },
                        "computed": true
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 28236,
                        "end": 28237,
                        "loc": {
                          "start": {
                            "line": 707,
                            "column": 62
                          },
                          "end": {
                            "line": 707,
                            "column": 63
                          }
                        },
                        "name": "y"
                      },
                      "computed": false
                    },
                    {
                      "type": "MemberExpression",
                      "start": 28239,
                      "end": 28250,
                      "loc": {
                        "start": {
                          "line": 707,
                          "column": 65
                        },
                        "end": {
                          "line": 707,
                          "column": 76
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 28239,
                        "end": 28248,
                        "loc": {
                          "start": {
                            "line": 707,
                            "column": 65
                          },
                          "end": {
                            "line": 707,
                            "column": 74
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 28239,
                          "end": 28245,
                          "loc": {
                            "start": {
                              "line": 707,
                              "column": 65
                            },
                            "end": {
                              "line": 707,
                              "column": 71
                            }
                          },
                          "name": "derivs"
                        },
                        "property": {
                          "type": "Literal",
                          "start": 28246,
                          "end": 28247,
                          "loc": {
                            "start": {
                              "line": 707,
                              "column": 72
                            },
                            "end": {
                              "line": 707,
                              "column": 73
                            }
                          },
                          "value": 2,
                          "rawValue": 2,
                          "raw": "2"
                        },
                        "computed": true
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 28249,
                        "end": 28250,
                        "loc": {
                          "start": {
                            "line": 707,
                            "column": 75
                          },
                          "end": {
                            "line": 707,
                            "column": 76
                          }
                        },
                        "name": "y"
                      },
                      "computed": false
                    }
                  ]
                }
              }
            ],
            "kind": "var"
          },
          {
            "type": "VariableDeclaration",
            "start": 28257,
            "end": 28282,
            "loc": {
              "start": {
                "line": 708,
                "column": 4
              },
              "end": {
                "line": 708,
                "column": 29
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 28261,
                "end": 28281,
                "loc": {
                  "start": {
                    "line": 708,
                    "column": 8
                  },
                  "end": {
                    "line": 708,
                    "column": 28
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 28261,
                  "end": 28263,
                  "loc": {
                    "start": {
                      "line": 708,
                      "column": 8
                    },
                    "end": {
                      "line": 708,
                      "column": 10
                    }
                  },
                  "name": "xx"
                },
                "init": {
                  "type": "CallExpression",
                  "start": 28266,
                  "end": 28281,
                  "loc": {
                    "start": {
                      "line": 708,
                      "column": 13
                    },
                    "end": {
                      "line": 708,
                      "column": 28
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 28266,
                    "end": 28279,
                    "loc": {
                      "start": {
                        "line": 708,
                        "column": 13
                      },
                      "end": {
                        "line": 708,
                        "column": 26
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 28266,
                      "end": 28270,
                      "loc": {
                        "start": {
                          "line": 708,
                          "column": 13
                        },
                        "end": {
                          "line": 708,
                          "column": 17
                        }
                      },
                      "name": "rowX"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 28271,
                      "end": 28279,
                      "loc": {
                        "start": {
                          "line": 708,
                          "column": 18
                        },
                        "end": {
                          "line": 708,
                          "column": 26
                        }
                      },
                      "name": "lengthSq"
                    },
                    "computed": false
                  },
                  "arguments": []
                }
              }
            ],
            "kind": "var"
          },
          {
            "type": "VariableDeclaration",
            "start": 28287,
            "end": 28312,
            "loc": {
              "start": {
                "line": 709,
                "column": 4
              },
              "end": {
                "line": 709,
                "column": 29
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 28291,
                "end": 28311,
                "loc": {
                  "start": {
                    "line": 709,
                    "column": 8
                  },
                  "end": {
                    "line": 709,
                    "column": 28
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 28291,
                  "end": 28293,
                  "loc": {
                    "start": {
                      "line": 709,
                      "column": 8
                    },
                    "end": {
                      "line": 709,
                      "column": 10
                    }
                  },
                  "name": "yy"
                },
                "init": {
                  "type": "CallExpression",
                  "start": 28296,
                  "end": 28311,
                  "loc": {
                    "start": {
                      "line": 709,
                      "column": 13
                    },
                    "end": {
                      "line": 709,
                      "column": 28
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 28296,
                    "end": 28309,
                    "loc": {
                      "start": {
                        "line": 709,
                        "column": 13
                      },
                      "end": {
                        "line": 709,
                        "column": 26
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 28296,
                      "end": 28300,
                      "loc": {
                        "start": {
                          "line": 709,
                          "column": 13
                        },
                        "end": {
                          "line": 709,
                          "column": 17
                        }
                      },
                      "name": "rowY"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 28301,
                      "end": 28309,
                      "loc": {
                        "start": {
                          "line": 709,
                          "column": 18
                        },
                        "end": {
                          "line": 709,
                          "column": 26
                        }
                      },
                      "name": "lengthSq"
                    },
                    "computed": false
                  },
                  "arguments": []
                }
              }
            ],
            "kind": "var"
          },
          {
            "type": "VariableDeclaration",
            "start": 28317,
            "end": 28341,
            "loc": {
              "start": {
                "line": 710,
                "column": 4
              },
              "end": {
                "line": 710,
                "column": 28
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 28321,
                "end": 28340,
                "loc": {
                  "start": {
                    "line": 710,
                    "column": 8
                  },
                  "end": {
                    "line": 710,
                    "column": 27
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 28321,
                  "end": 28323,
                  "loc": {
                    "start": {
                      "line": 710,
                      "column": 8
                    },
                    "end": {
                      "line": 710,
                      "column": 10
                    }
                  },
                  "name": "xy"
                },
                "init": {
                  "type": "CallExpression",
                  "start": 28326,
                  "end": 28340,
                  "loc": {
                    "start": {
                      "line": 710,
                      "column": 13
                    },
                    "end": {
                      "line": 710,
                      "column": 27
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 28326,
                    "end": 28334,
                    "loc": {
                      "start": {
                        "line": 710,
                        "column": 13
                      },
                      "end": {
                        "line": 710,
                        "column": 21
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 28326,
                      "end": 28330,
                      "loc": {
                        "start": {
                          "line": 710,
                          "column": 13
                        },
                        "end": {
                          "line": 710,
                          "column": 17
                        }
                      },
                      "name": "rowX"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 28331,
                      "end": 28334,
                      "loc": {
                        "start": {
                          "line": 710,
                          "column": 18
                        },
                        "end": {
                          "line": 710,
                          "column": 21
                        }
                      },
                      "name": "dot"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 28335,
                      "end": 28339,
                      "loc": {
                        "start": {
                          "line": 710,
                          "column": 22
                        },
                        "end": {
                          "line": 710,
                          "column": 26
                        }
                      },
                      "name": "rowY"
                    }
                  ]
                }
              }
            ],
            "kind": "var",
            "trailingComments": [
              {
                "type": "CommentLine",
                "value": "find its maximal eigenvalue by solving quadratic equation",
                "start": 28346,
                "end": 28405,
                "loc": {
                  "start": {
                    "line": 711,
                    "column": 4
                  },
                  "end": {
                    "line": 711,
                    "column": 63
                  }
                },
                "range": [
                  28346,
                  28405
                ]
              }
            ]
          },
          {
            "type": "VariableDeclaration",
            "start": 28410,
            "end": 28434,
            "loc": {
              "start": {
                "line": 712,
                "column": 4
              },
              "end": {
                "line": 712,
                "column": 28
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 28414,
                "end": 28433,
                "loc": {
                  "start": {
                    "line": 712,
                    "column": 8
                  },
                  "end": {
                    "line": 712,
                    "column": 27
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 28414,
                  "end": 28417,
                  "loc": {
                    "start": {
                      "line": 712,
                      "column": 8
                    },
                    "end": {
                      "line": 712,
                      "column": 11
                    }
                  },
                  "name": "mid",
                  "leadingComments": null
                },
                "init": {
                  "type": "BinaryExpression",
                  "start": 28420,
                  "end": 28433,
                  "loc": {
                    "start": {
                      "line": 712,
                      "column": 14
                    },
                    "end": {
                      "line": 712,
                      "column": 27
                    }
                  },
                  "left": {
                    "type": "BinaryExpression",
                    "start": 28421,
                    "end": 28428,
                    "loc": {
                      "start": {
                        "line": 712,
                        "column": 15
                      },
                      "end": {
                        "line": 712,
                        "column": 22
                      }
                    },
                    "left": {
                      "type": "Identifier",
                      "start": 28421,
                      "end": 28423,
                      "loc": {
                        "start": {
                          "line": 712,
                          "column": 15
                        },
                        "end": {
                          "line": 712,
                          "column": 17
                        }
                      },
                      "name": "xx"
                    },
                    "operator": "+",
                    "right": {
                      "type": "Identifier",
                      "start": 28426,
                      "end": 28428,
                      "loc": {
                        "start": {
                          "line": 712,
                          "column": 20
                        },
                        "end": {
                          "line": 712,
                          "column": 22
                        }
                      },
                      "name": "yy"
                    },
                    "parenthesizedExpression": true
                  },
                  "operator": "/",
                  "right": {
                    "type": "Literal",
                    "start": 28432,
                    "end": 28433,
                    "loc": {
                      "start": {
                        "line": 712,
                        "column": 26
                      },
                      "end": {
                        "line": 712,
                        "column": 27
                      }
                    },
                    "value": 2,
                    "rawValue": 2,
                    "raw": "2"
                  }
                },
                "leadingComments": null
              }
            ],
            "kind": "var",
            "leadingComments": [
              {
                "type": "CommentLine",
                "value": "find its maximal eigenvalue by solving quadratic equation",
                "start": 28346,
                "end": 28405,
                "loc": {
                  "start": {
                    "line": 711,
                    "column": 4
                  },
                  "end": {
                    "line": 711,
                    "column": 63
                  }
                },
                "range": [
                  28346,
                  28405
                ]
              }
            ]
          },
          {
            "type": "VariableDeclaration",
            "start": 28439,
            "end": 28465,
            "loc": {
              "start": {
                "line": 713,
                "column": 4
              },
              "end": {
                "line": 713,
                "column": 30
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 28443,
                "end": 28464,
                "loc": {
                  "start": {
                    "line": 713,
                    "column": 8
                  },
                  "end": {
                    "line": 713,
                    "column": 29
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 28443,
                  "end": 28448,
                  "loc": {
                    "start": {
                      "line": 713,
                      "column": 8
                    },
                    "end": {
                      "line": 713,
                      "column": 13
                    }
                  },
                  "name": "hDiff"
                },
                "init": {
                  "type": "BinaryExpression",
                  "start": 28451,
                  "end": 28464,
                  "loc": {
                    "start": {
                      "line": 713,
                      "column": 16
                    },
                    "end": {
                      "line": 713,
                      "column": 29
                    }
                  },
                  "left": {
                    "type": "BinaryExpression",
                    "start": 28452,
                    "end": 28459,
                    "loc": {
                      "start": {
                        "line": 713,
                        "column": 17
                      },
                      "end": {
                        "line": 713,
                        "column": 24
                      }
                    },
                    "left": {
                      "type": "Identifier",
                      "start": 28452,
                      "end": 28454,
                      "loc": {
                        "start": {
                          "line": 713,
                          "column": 17
                        },
                        "end": {
                          "line": 713,
                          "column": 19
                        }
                      },
                      "name": "xx"
                    },
                    "operator": "-",
                    "right": {
                      "type": "Identifier",
                      "start": 28457,
                      "end": 28459,
                      "loc": {
                        "start": {
                          "line": 713,
                          "column": 22
                        },
                        "end": {
                          "line": 713,
                          "column": 24
                        }
                      },
                      "name": "yy"
                    },
                    "parenthesizedExpression": true
                  },
                  "operator": "/",
                  "right": {
                    "type": "Literal",
                    "start": 28463,
                    "end": 28464,
                    "loc": {
                      "start": {
                        "line": 713,
                        "column": 28
                      },
                      "end": {
                        "line": 713,
                        "column": 29
                      }
                    },
                    "value": 2,
                    "rawValue": 2,
                    "raw": "2"
                  }
                }
              }
            ],
            "kind": "var"
          },
          {
            "type": "VariableDeclaration",
            "start": 28470,
            "end": 28506,
            "loc": {
              "start": {
                "line": 714,
                "column": 4
              },
              "end": {
                "line": 714,
                "column": 40
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 28474,
                "end": 28505,
                "loc": {
                  "start": {
                    "line": 714,
                    "column": 8
                  },
                  "end": {
                    "line": 714,
                    "column": 39
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 28474,
                  "end": 28479,
                  "loc": {
                    "start": {
                      "line": 714,
                      "column": 8
                    },
                    "end": {
                      "line": 714,
                      "column": 13
                    }
                  },
                  "name": "discr"
                },
                "init": {
                  "type": "BinaryExpression",
                  "start": 28482,
                  "end": 28505,
                  "loc": {
                    "start": {
                      "line": 714,
                      "column": 16
                    },
                    "end": {
                      "line": 714,
                      "column": 39
                    }
                  },
                  "left": {
                    "type": "BinaryExpression",
                    "start": 28482,
                    "end": 28495,
                    "loc": {
                      "start": {
                        "line": 714,
                        "column": 16
                      },
                      "end": {
                        "line": 714,
                        "column": 29
                      }
                    },
                    "left": {
                      "type": "Identifier",
                      "start": 28482,
                      "end": 28487,
                      "loc": {
                        "start": {
                          "line": 714,
                          "column": 16
                        },
                        "end": {
                          "line": 714,
                          "column": 21
                        }
                      },
                      "name": "hDiff"
                    },
                    "operator": "*",
                    "right": {
                      "type": "Identifier",
                      "start": 28490,
                      "end": 28495,
                      "loc": {
                        "start": {
                          "line": 714,
                          "column": 24
                        },
                        "end": {
                          "line": 714,
                          "column": 29
                        }
                      },
                      "name": "hDiff"
                    }
                  },
                  "operator": "+",
                  "right": {
                    "type": "BinaryExpression",
                    "start": 28498,
                    "end": 28505,
                    "loc": {
                      "start": {
                        "line": 714,
                        "column": 32
                      },
                      "end": {
                        "line": 714,
                        "column": 39
                      }
                    },
                    "left": {
                      "type": "Identifier",
                      "start": 28498,
                      "end": 28500,
                      "loc": {
                        "start": {
                          "line": 714,
                          "column": 32
                        },
                        "end": {
                          "line": 714,
                          "column": 34
                        }
                      },
                      "name": "xy"
                    },
                    "operator": "*",
                    "right": {
                      "type": "Identifier",
                      "start": 28503,
                      "end": 28505,
                      "loc": {
                        "start": {
                          "line": 714,
                          "column": 37
                        },
                        "end": {
                          "line": 714,
                          "column": 39
                        }
                      },
                      "name": "xy"
                    }
                  }
                }
              }
            ],
            "kind": "var"
          },
          {
            "type": "VariableDeclaration",
            "start": 28511,
            "end": 28560,
            "loc": {
              "start": {
                "line": 715,
                "column": 4
              },
              "end": {
                "line": 715,
                "column": 53
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 28515,
                "end": 28559,
                "loc": {
                  "start": {
                    "line": 715,
                    "column": 8
                  },
                  "end": {
                    "line": 715,
                    "column": 52
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 28515,
                  "end": 28519,
                  "loc": {
                    "start": {
                      "line": 715,
                      "column": 8
                    },
                    "end": {
                      "line": 715,
                      "column": 12
                    }
                  },
                  "name": "norm"
                },
                "init": {
                  "type": "BinaryExpression",
                  "start": 28522,
                  "end": 28559,
                  "loc": {
                    "start": {
                      "line": 715,
                      "column": 15
                    },
                    "end": {
                      "line": 715,
                      "column": 52
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 28522,
                    "end": 28525,
                    "loc": {
                      "start": {
                        "line": 715,
                        "column": 15
                      },
                      "end": {
                        "line": 715,
                        "column": 18
                      }
                    },
                    "name": "mid"
                  },
                  "operator": "+",
                  "right": {
                    "type": "CallExpression",
                    "start": 28528,
                    "end": 28559,
                    "loc": {
                      "start": {
                        "line": 715,
                        "column": 21
                      },
                      "end": {
                        "line": 715,
                        "column": 52
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 28528,
                      "end": 28537,
                      "loc": {
                        "start": {
                          "line": 715,
                          "column": 21
                        },
                        "end": {
                          "line": 715,
                          "column": 30
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 28528,
                        "end": 28532,
                        "loc": {
                          "start": {
                            "line": 715,
                            "column": 21
                          },
                          "end": {
                            "line": 715,
                            "column": 25
                          }
                        },
                        "name": "Math"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 28533,
                        "end": 28537,
                        "loc": {
                          "start": {
                            "line": 715,
                            "column": 26
                          },
                          "end": {
                            "line": 715,
                            "column": 30
                          }
                        },
                        "name": "sqrt"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "CallExpression",
                        "start": 28538,
                        "end": 28558,
                        "loc": {
                          "start": {
                            "line": 715,
                            "column": 31
                          },
                          "end": {
                            "line": 715,
                            "column": 51
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 28538,
                          "end": 28546,
                          "loc": {
                            "start": {
                              "line": 715,
                              "column": 31
                            },
                            "end": {
                              "line": 715,
                              "column": 39
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 28538,
                            "end": 28542,
                            "loc": {
                              "start": {
                                "line": 715,
                                "column": 31
                              },
                              "end": {
                                "line": 715,
                                "column": 35
                              }
                            },
                            "name": "Math"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 28543,
                            "end": 28546,
                            "loc": {
                              "start": {
                                "line": 715,
                                "column": 36
                              },
                              "end": {
                                "line": 715,
                                "column": 39
                              }
                            },
                            "name": "max"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 28547,
                            "end": 28552,
                            "loc": {
                              "start": {
                                "line": 715,
                                "column": 40
                              },
                              "end": {
                                "line": 715,
                                "column": 45
                              }
                            },
                            "name": "discr"
                          },
                          {
                            "type": "Literal",
                            "start": 28554,
                            "end": 28557,
                            "loc": {
                              "start": {
                                "line": 715,
                                "column": 47
                              },
                              "end": {
                                "line": 715,
                                "column": 50
                              }
                            },
                            "value": 0,
                            "rawValue": 0,
                            "raw": "0.0"
                          }
                        ]
                      }
                    ]
                  }
                }
              }
            ],
            "kind": "var",
            "trailingComments": [
              {
                "type": "CommentLine",
                "value": "singular value is its square root",
                "start": 28565,
                "end": 28600,
                "loc": {
                  "start": {
                    "line": 716,
                    "column": 4
                  },
                  "end": {
                    "line": 716,
                    "column": 39
                  }
                },
                "range": [
                  28565,
                  28600
                ]
              }
            ]
          },
          {
            "type": "ReturnStatement",
            "start": 28605,
            "end": 28643,
            "loc": {
              "start": {
                "line": 717,
                "column": 4
              },
              "end": {
                "line": 717,
                "column": 42
              }
            },
            "argument": {
              "type": "CallExpression",
              "start": 28612,
              "end": 28642,
              "loc": {
                "start": {
                  "line": 717,
                  "column": 11
                },
                "end": {
                  "line": 717,
                  "column": 41
                }
              },
              "callee": {
                "type": "MemberExpression",
                "start": 28612,
                "end": 28621,
                "loc": {
                  "start": {
                    "line": 717,
                    "column": 11
                  },
                  "end": {
                    "line": 717,
                    "column": 20
                  }
                },
                "object": {
                  "type": "Identifier",
                  "start": 28612,
                  "end": 28616,
                  "loc": {
                    "start": {
                      "line": 717,
                      "column": 11
                    },
                    "end": {
                      "line": 717,
                      "column": 15
                    }
                  },
                  "name": "Math",
                  "leadingComments": null
                },
                "property": {
                  "type": "Identifier",
                  "start": 28617,
                  "end": 28621,
                  "loc": {
                    "start": {
                      "line": 717,
                      "column": 16
                    },
                    "end": {
                      "line": 717,
                      "column": 20
                    }
                  },
                  "name": "sqrt"
                },
                "computed": false,
                "leadingComments": null
              },
              "arguments": [
                {
                  "type": "CallExpression",
                  "start": 28622,
                  "end": 28641,
                  "loc": {
                    "start": {
                      "line": 717,
                      "column": 21
                    },
                    "end": {
                      "line": 717,
                      "column": 40
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 28622,
                    "end": 28630,
                    "loc": {
                      "start": {
                        "line": 717,
                        "column": 21
                      },
                      "end": {
                        "line": 717,
                        "column": 29
                      }
                    },
                    "object": {
                      "type": "Identifier",
                      "start": 28622,
                      "end": 28626,
                      "loc": {
                        "start": {
                          "line": 717,
                          "column": 21
                        },
                        "end": {
                          "line": 717,
                          "column": 25
                        }
                      },
                      "name": "Math"
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 28627,
                      "end": 28630,
                      "loc": {
                        "start": {
                          "line": 717,
                          "column": 26
                        },
                        "end": {
                          "line": 717,
                          "column": 29
                        }
                      },
                      "name": "max"
                    },
                    "computed": false
                  },
                  "arguments": [
                    {
                      "type": "Identifier",
                      "start": 28631,
                      "end": 28635,
                      "loc": {
                        "start": {
                          "line": 717,
                          "column": 30
                        },
                        "end": {
                          "line": 717,
                          "column": 34
                        }
                      },
                      "name": "norm"
                    },
                    {
                      "type": "Literal",
                      "start": 28637,
                      "end": 28640,
                      "loc": {
                        "start": {
                          "line": 717,
                          "column": 36
                        },
                        "end": {
                          "line": 717,
                          "column": 39
                        }
                      },
                      "value": 0,
                      "rawValue": 0,
                      "raw": "0.0"
                    }
                  ]
                }
              ],
              "leadingComments": null
            },
            "leadingComments": [
              {
                "type": "CommentLine",
                "value": "singular value is its square root",
                "start": 28565,
                "end": 28600,
                "loc": {
                  "start": {
                    "line": 716,
                    "column": 4
                  },
                  "end": {
                    "line": 716,
                    "column": 39
                  }
                },
                "range": [
                  28565,
                  28600
                ]
              }
            ]
          }
        ]
      },
      "leadingComments": [
        {
          "type": "Block",
          "value": "*\n * Calculates coefficient, which allows to translate world size to screen size.\n * @param screenCoordsResult - result of method 'transformWorldToScreen' with derivatives\n * @return number alpha such that:\n *   a sphere of radius R in 3D world space corresponds to\n *   an ellipse with major radius (alpha * R) pixels on screen.\n ",
          "start": 27485,
          "end": 27820,
          "loc": {
            "start": {
              "line": 695,
              "column": 0
            },
            "end": {
              "line": 701,
              "column": 3
            }
          },
          "range": [
            27485,
            27820
          ]
        }
      ]
    },
    {
      "type": "FunctionDeclaration",
      "start": 28647,
      "end": 28996,
      "loc": {
        "start": {
          "line": 720,
          "column": 0
        },
        "end": {
          "line": 727,
          "column": 1
        }
      },
      "id": {
        "type": "Identifier",
        "start": 28656,
        "end": 28683,
        "loc": {
          "start": {
            "line": 720,
            "column": 9
          },
          "end": {
            "line": 720,
            "column": 36
          }
        },
        "name": "updateSizesAndVisualization"
      },
      "generator": false,
      "expression": false,
      "async": false,
      "params": [],
      "body": {
        "type": "BlockStatement",
        "start": 28686,
        "end": 28996,
        "loc": {
          "start": {
            "line": 720,
            "column": 39
          },
          "end": {
            "line": 727,
            "column": 1
          }
        },
        "body": [
          {
            "type": "ExpressionStatement",
            "start": 28692,
            "end": 28994,
            "loc": {
              "start": {
                "line": 721,
                "column": 4
              },
              "end": {
                "line": 726,
                "column": 7
              }
            },
            "expression": {
              "type": "CallExpression",
              "start": 28692,
              "end": 28993,
              "loc": {
                "start": {
                  "line": 721,
                  "column": 4
                },
                "end": {
                  "line": 726,
                  "column": 6
                }
              },
              "callee": {
                "type": "MemberExpression",
                "start": 28692,
                "end": 28721,
                "loc": {
                  "start": {
                    "line": 721,
                    "column": 4
                  },
                  "end": {
                    "line": 721,
                    "column": 33
                  }
                },
                "object": {
                  "type": "Identifier",
                  "start": 28692,
                  "end": 28698,
                  "loc": {
                    "start": {
                      "line": 721,
                      "column": 4
                    },
                    "end": {
                      "line": 721,
                      "column": 10
                    }
                  },
                  "name": "Sketch"
                },
                "property": {
                  "type": "Identifier",
                  "start": 28699,
                  "end": 28721,
                  "loc": {
                    "start": {
                      "line": 721,
                      "column": 11
                    },
                    "end": {
                      "line": 721,
                      "column": 33
                    }
                  },
                  "name": "ForObjectsWithChildren"
                },
                "computed": false
              },
              "arguments": [
                {
                  "type": "ThisExpression",
                  "start": 28722,
                  "end": 28726,
                  "loc": {
                    "start": {
                      "line": 721,
                      "column": 34
                    },
                    "end": {
                      "line": 721,
                      "column": 38
                    }
                  }
                },
                {
                  "type": "ArrowFunctionExpression",
                  "start": 28728,
                  "end": 28992,
                  "loc": {
                    "start": {
                      "line": 721,
                      "column": 40
                    },
                    "end": {
                      "line": 726,
                      "column": 5
                    }
                  },
                  "id": null,
                  "generator": false,
                  "expression": false,
                  "async": false,
                  "params": [
                    {
                      "type": "Identifier",
                      "start": 28728,
                      "end": 28731,
                      "loc": {
                        "start": {
                          "line": 721,
                          "column": 40
                        },
                        "end": {
                          "line": 721,
                          "column": 43
                        }
                      },
                      "name": "obj"
                    }
                  ],
                  "body": {
                    "type": "BlockStatement",
                    "start": 28735,
                    "end": 28992,
                    "loc": {
                      "start": {
                        "line": 721,
                        "column": 47
                      },
                      "end": {
                        "line": 726,
                        "column": 5
                      }
                    },
                    "body": [
                      {
                        "type": "IfStatement",
                        "start": 28745,
                        "end": 28762,
                        "loc": {
                          "start": {
                            "line": 722,
                            "column": 8
                          },
                          "end": {
                            "line": 722,
                            "column": 25
                          }
                        },
                        "test": {
                          "type": "UnaryExpression",
                          "start": 28749,
                          "end": 28753,
                          "loc": {
                            "start": {
                              "line": 722,
                              "column": 12
                            },
                            "end": {
                              "line": 722,
                              "column": 16
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "Identifier",
                            "start": 28750,
                            "end": 28753,
                            "loc": {
                              "start": {
                                "line": 722,
                                "column": 13
                              },
                              "end": {
                                "line": 722,
                                "column": 16
                              }
                            },
                            "name": "obj"
                          }
                        },
                        "consequent": {
                          "type": "ReturnStatement",
                          "start": 28755,
                          "end": 28762,
                          "loc": {
                            "start": {
                              "line": 722,
                              "column": 18
                            },
                            "end": {
                              "line": 722,
                              "column": 25
                            }
                          },
                          "argument": null,
                          "leadingComments": null,
                          "trailingComments": null
                        },
                        "alternate": null,
                        "trailingComments": [
                          {
                            "type": "CommentLine",
                            "value": "TODO: perhaps we can add a \"dirty\" flag to avoid doing all the updates every frame...",
                            "start": 28771,
                            "end": 28858,
                            "loc": {
                              "start": {
                                "line": 723,
                                "column": 8
                              },
                              "end": {
                                "line": 723,
                                "column": 95
                              }
                            },
                            "range": [
                              28771,
                              28858
                            ]
                          }
                        ]
                      },
                      {
                        "type": "ExpressionStatement",
                        "start": 28867,
                        "end": 28924,
                        "loc": {
                          "start": {
                            "line": 724,
                            "column": 8
                          },
                          "end": {
                            "line": 724,
                            "column": 65
                          }
                        },
                        "expression": {
                          "type": "LogicalExpression",
                          "start": 28867,
                          "end": 28923,
                          "loc": {
                            "start": {
                              "line": 724,
                              "column": 8
                            },
                            "end": {
                              "line": 724,
                              "column": 64
                            }
                          },
                          "left": {
                            "type": "LogicalExpression",
                            "start": 28867,
                            "end": 28894,
                            "loc": {
                              "start": {
                                "line": 724,
                                "column": 8
                              },
                              "end": {
                                "line": 724,
                                "column": 35
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 28867,
                              "end": 28882,
                              "loc": {
                                "start": {
                                  "line": 724,
                                  "column": 8
                                },
                                "end": {
                                  "line": 724,
                                  "column": 23
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 28867,
                                "end": 28870,
                                "loc": {
                                  "start": {
                                    "line": 724,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 724,
                                    "column": 11
                                  }
                                },
                                "name": "obj",
                                "leadingComments": null
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 28871,
                                "end": 28882,
                                "loc": {
                                  "start": {
                                    "line": 724,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 724,
                                    "column": 23
                                  }
                                },
                                "name": "updateSizes"
                              },
                              "computed": false,
                              "leadingComments": null
                            },
                            "operator": "&&",
                            "right": {
                              "type": "MemberExpression",
                              "start": 28886,
                              "end": 28894,
                              "loc": {
                                "start": {
                                  "line": 724,
                                  "column": 27
                                },
                                "end": {
                                  "line": 724,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 28886,
                                "end": 28889,
                                "loc": {
                                  "start": {
                                    "line": 724,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 724,
                                    "column": 30
                                  }
                                },
                                "name": "obj"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 28890,
                                "end": 28894,
                                "loc": {
                                  "start": {
                                    "line": 724,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 724,
                                    "column": 35
                                  }
                                },
                                "name": "view"
                              },
                              "computed": false
                            },
                            "leadingComments": null
                          },
                          "operator": "&&",
                          "right": {
                            "type": "CallExpression",
                            "start": 28898,
                            "end": 28923,
                            "loc": {
                              "start": {
                                "line": 724,
                                "column": 39
                              },
                              "end": {
                                "line": 724,
                                "column": 64
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 28898,
                              "end": 28913,
                              "loc": {
                                "start": {
                                  "line": 724,
                                  "column": 39
                                },
                                "end": {
                                  "line": 724,
                                  "column": 54
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 28898,
                                "end": 28901,
                                "loc": {
                                  "start": {
                                    "line": 724,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 724,
                                    "column": 42
                                  }
                                },
                                "name": "obj"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 28902,
                                "end": 28913,
                                "loc": {
                                  "start": {
                                    "line": 724,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 724,
                                    "column": 54
                                  }
                                },
                                "name": "updateSizes"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 28914,
                                "end": 28922,
                                "loc": {
                                  "start": {
                                    "line": 724,
                                    "column": 55
                                  },
                                  "end": {
                                    "line": 724,
                                    "column": 63
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 28914,
                                  "end": 28917,
                                  "loc": {
                                    "start": {
                                      "line": 724,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 724,
                                      "column": 58
                                    }
                                  },
                                  "name": "obj"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28918,
                                  "end": 28922,
                                  "loc": {
                                    "start": {
                                      "line": 724,
                                      "column": 59
                                    },
                                    "end": {
                                      "line": 724,
                                      "column": 63
                                    }
                                  },
                                  "name": "view"
                                },
                                "computed": false
                              }
                            ]
                          },
                          "leadingComments": null
                        },
                        "leadingComments": [
                          {
                            "type": "CommentLine",
                            "value": "TODO: perhaps we can add a \"dirty\" flag to avoid doing all the updates every frame...",
                            "start": 28771,
                            "end": 28858,
                            "loc": {
                              "start": {
                                "line": 723,
                                "column": 8
                              },
                              "end": {
                                "line": 723,
                                "column": 95
                              }
                            },
                            "range": [
                              28771,
                              28858
                            ]
                          }
                        ]
                      },
                      {
                        "type": "ExpressionStatement",
                        "start": 28933,
                        "end": 28986,
                        "loc": {
                          "start": {
                            "line": 725,
                            "column": 8
                          },
                          "end": {
                            "line": 725,
                            "column": 61
                          }
                        },
                        "expression": {
                          "type": "LogicalExpression",
                          "start": 28933,
                          "end": 28985,
                          "loc": {
                            "start": {
                              "line": 725,
                              "column": 8
                            },
                            "end": {
                              "line": 725,
                              "column": 60
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 28933,
                            "end": 28956,
                            "loc": {
                              "start": {
                                "line": 725,
                                "column": 8
                              },
                              "end": {
                                "line": 725,
                                "column": 31
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 28933,
                              "end": 28936,
                              "loc": {
                                "start": {
                                  "line": 725,
                                  "column": 8
                                },
                                "end": {
                                  "line": 725,
                                  "column": 11
                                }
                              },
                              "name": "obj"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 28937,
                              "end": 28956,
                              "loc": {
                                "start": {
                                  "line": 725,
                                  "column": 12
                                },
                                "end": {
                                  "line": 725,
                                  "column": 31
                                }
                              },
                              "name": "updateVisualization"
                            },
                            "computed": false
                          },
                          "operator": "&&",
                          "right": {
                            "type": "CallExpression",
                            "start": 28960,
                            "end": 28985,
                            "loc": {
                              "start": {
                                "line": 725,
                                "column": 35
                              },
                              "end": {
                                "line": 725,
                                "column": 60
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 28960,
                              "end": 28983,
                              "loc": {
                                "start": {
                                  "line": 725,
                                  "column": 35
                                },
                                "end": {
                                  "line": 725,
                                  "column": 58
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 28960,
                                "end": 28963,
                                "loc": {
                                  "start": {
                                    "line": 725,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 725,
                                    "column": 38
                                  }
                                },
                                "name": "obj"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 28964,
                                "end": 28983,
                                "loc": {
                                  "start": {
                                    "line": 725,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 725,
                                    "column": 58
                                  }
                                },
                                "name": "updateVisualization"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      }
                    ]
                  }
                }
              ]
            }
          }
        ]
      }
    }
  ]
}