{
  "type": "Program",
  "start": 0,
  "end": 34735,
  "loc": {
    "start": {
      "line": 1,
      "column": 0
    },
    "end": {
      "line": 828,
      "column": 0
    }
  },
  "sourceType": "module",
  "body": [
    {
      "type": "ImportDeclaration",
      "start": 0,
      "end": 95,
      "loc": {
        "start": {
          "line": 1,
          "column": 0
        },
        "end": {
          "line": 1,
          "column": 95
        }
      },
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "start": 8,
          "end": 18,
          "loc": {
            "start": {
              "line": 1,
              "column": 8
            },
            "end": {
              "line": 1,
              "column": 18
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 8,
            "end": 18,
            "loc": {
              "start": {
                "line": 1,
                "column": 8
              },
              "end": {
                "line": 1,
                "column": 18
              }
            },
            "name": "Expression"
          },
          "local": {
            "type": "Identifier",
            "start": 8,
            "end": 18,
            "loc": {
              "start": {
                "line": 1,
                "column": 8
              },
              "end": {
                "line": 1,
                "column": 18
              }
            },
            "name": "Expression"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 20,
          "end": 29,
          "loc": {
            "start": {
              "line": 1,
              "column": 20
            },
            "end": {
              "line": 1,
              "column": 29
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 20,
            "end": 29,
            "loc": {
              "start": {
                "line": 1,
                "column": 20
              },
              "end": {
                "line": 1,
                "column": 29
              }
            },
            "name": "Statement"
          },
          "local": {
            "type": "Identifier",
            "start": 20,
            "end": 29,
            "loc": {
              "start": {
                "line": 1,
                "column": 20
              },
              "end": {
                "line": 1,
                "column": 29
              }
            },
            "name": "Statement"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 31,
          "end": 41,
          "loc": {
            "start": {
              "line": 1,
              "column": 31
            },
            "end": {
              "line": 1,
              "column": 41
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 31,
            "end": 41,
            "loc": {
              "start": {
                "line": 1,
                "column": 31
              },
              "end": {
                "line": 1,
                "column": 41
              }
            },
            "name": "Statements"
          },
          "local": {
            "type": "Identifier",
            "start": 31,
            "end": 41,
            "loc": {
              "start": {
                "line": 1,
                "column": 31
              },
              "end": {
                "line": 1,
                "column": 41
              }
            },
            "name": "Statements"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 43,
          "end": 50,
          "loc": {
            "start": {
              "line": 1,
              "column": 43
            },
            "end": {
              "line": 1,
              "column": 50
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 43,
            "end": 50,
            "loc": {
              "start": {
                "line": 1,
                "column": 43
              },
              "end": {
                "line": 1,
                "column": 50
              }
            },
            "name": "parseTo"
          },
          "local": {
            "type": "Identifier",
            "start": 43,
            "end": 50,
            "loc": {
              "start": {
                "line": 1,
                "column": 43
              },
              "end": {
                "line": 1,
                "column": 50
              }
            },
            "name": "parseTo"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 52,
          "end": 64,
          "loc": {
            "start": {
              "line": 1,
              "column": 52
            },
            "end": {
              "line": 1,
              "column": 64
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 52,
            "end": 64,
            "loc": {
              "start": {
                "line": 1,
                "column": 52
              },
              "end": {
                "line": 1,
                "column": 64
              }
            },
            "name": "trackPromise"
          },
          "local": {
            "type": "Identifier",
            "start": 52,
            "end": 64,
            "loc": {
              "start": {
                "line": 1,
                "column": 52
              },
              "end": {
                "line": 1,
                "column": 64
              }
            },
            "name": "trackPromise"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 71,
        "end": 94,
        "loc": {
          "start": {
            "line": 1,
            "column": 71
          },
          "end": {
            "line": 1,
            "column": 94
          }
        },
        "value": "../sketcher/cchelpers",
        "rawValue": "../sketcher/cchelpers",
        "raw": "'../sketcher/cchelpers'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 97,
      "end": 150,
      "loc": {
        "start": {
          "line": 2,
          "column": 0
        },
        "end": {
          "line": 2,
          "column": 53
        }
      },
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "start": 105,
          "end": 119,
          "loc": {
            "start": {
              "line": 2,
              "column": 8
            },
            "end": {
              "line": 2,
              "column": 22
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 105,
            "end": 119,
            "loc": {
              "start": {
                "line": 2,
                "column": 8
              },
              "end": {
                "line": 2,
                "column": 22
              }
            },
            "name": "ClassCadObject"
          },
          "local": {
            "type": "Identifier",
            "start": 105,
            "end": 119,
            "loc": {
              "start": {
                "line": 2,
                "column": 8
              },
              "end": {
                "line": 2,
                "column": 22
              }
            },
            "name": "ClassCadObject"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 126,
        "end": 149,
        "loc": {
          "start": {
            "line": 2,
            "column": 29
          },
          "end": {
            "line": 2,
            "column": 52
          }
        },
        "value": "../sketcher/ccobjects",
        "rawValue": "../sketcher/ccobjects",
        "raw": "'../sketcher/ccobjects'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 152,
      "end": 196,
      "loc": {
        "start": {
          "line": 3,
          "column": 0
        },
        "end": {
          "line": 3,
          "column": 44
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 159,
          "end": 167,
          "loc": {
            "start": {
              "line": 3,
              "column": 7
            },
            "end": {
              "line": 3,
              "column": 15
            }
          },
          "local": {
            "type": "Identifier",
            "start": 159,
            "end": 167,
            "loc": {
              "start": {
                "line": 3,
                "column": 7
              },
              "end": {
                "line": 3,
                "column": 15
              }
            },
            "name": "Sketcher"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 173,
        "end": 195,
        "loc": {
          "start": {
            "line": 3,
            "column": 21
          },
          "end": {
            "line": 3,
            "column": 43
          }
        },
        "value": "../sketcher/sketcher",
        "rawValue": "../sketcher/sketcher",
        "raw": "'../sketcher/sketcher'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 198,
      "end": 246,
      "loc": {
        "start": {
          "line": 4,
          "column": 0
        },
        "end": {
          "line": 4,
          "column": 48
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 205,
          "end": 215,
          "loc": {
            "start": {
              "line": 4,
              "column": 7
            },
            "end": {
              "line": 4,
              "column": 17
            }
          },
          "local": {
            "type": "Identifier",
            "start": 205,
            "end": 215,
            "loc": {
              "start": {
                "line": 4,
                "column": 7
              },
              "end": {
                "line": 4,
                "column": 17
              }
            },
            "name": "Constraint"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 221,
        "end": 245,
        "loc": {
          "start": {
            "line": 4,
            "column": 23
          },
          "end": {
            "line": 4,
            "column": 47
          }
        },
        "value": "../sketcher/constraint",
        "rawValue": "../sketcher/constraint",
        "raw": "'../sketcher/constraint'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 248,
      "end": 310,
      "loc": {
        "start": {
          "line": 5,
          "column": 0
        },
        "end": {
          "line": 5,
          "column": 62
        }
      },
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "start": 256,
          "end": 275,
          "loc": {
            "start": {
              "line": 5,
              "column": 8
            },
            "end": {
              "line": 5,
              "column": 27
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 256,
            "end": 275,
            "loc": {
              "start": {
                "line": 5,
                "column": 8
              },
              "end": {
                "line": 5,
                "column": 27
              }
            },
            "name": "ConstraintGenerator"
          },
          "local": {
            "type": "Identifier",
            "start": 256,
            "end": 275,
            "loc": {
              "start": {
                "line": 5,
                "column": 8
              },
              "end": {
                "line": 5,
                "column": 27
              }
            },
            "name": "ConstraintGenerator"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 282,
        "end": 309,
        "loc": {
          "start": {
            "line": 5,
            "column": 34
          },
          "end": {
            "line": 5,
            "column": 61
          }
        },
        "value": "../sketcher/constraintgen",
        "rawValue": "../sketcher/constraintgen",
        "raw": "'../sketcher/constraintgen'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 312,
      "end": 369,
      "loc": {
        "start": {
          "line": 6,
          "column": 0
        },
        "end": {
          "line": 6,
          "column": 57
        }
      },
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "start": 320,
          "end": 325,
          "loc": {
            "start": {
              "line": 6,
              "column": 8
            },
            "end": {
              "line": 6,
              "column": 13
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 320,
            "end": 325,
            "loc": {
              "start": {
                "line": 6,
                "column": 8
              },
              "end": {
                "line": 6,
                "column": 13
              }
            },
            "name": "Point"
          },
          "local": {
            "type": "Identifier",
            "start": 320,
            "end": 325,
            "loc": {
              "start": {
                "line": 6,
                "column": 8
              },
              "end": {
                "line": 6,
                "column": 13
              }
            },
            "name": "Point"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 327,
          "end": 331,
          "loc": {
            "start": {
              "line": 6,
              "column": 15
            },
            "end": {
              "line": 6,
              "column": 19
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 327,
            "end": 331,
            "loc": {
              "start": {
                "line": 6,
                "column": 15
              },
              "end": {
                "line": 6,
                "column": 19
              }
            },
            "name": "Line"
          },
          "local": {
            "type": "Identifier",
            "start": 327,
            "end": 331,
            "loc": {
              "start": {
                "line": 6,
                "column": 15
              },
              "end": {
                "line": 6,
                "column": 19
              }
            },
            "name": "Line"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 333,
          "end": 336,
          "loc": {
            "start": {
              "line": 6,
              "column": 21
            },
            "end": {
              "line": 6,
              "column": 24
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 333,
            "end": 336,
            "loc": {
              "start": {
                "line": 6,
                "column": 21
              },
              "end": {
                "line": 6,
                "column": 24
              }
            },
            "name": "Arc"
          },
          "local": {
            "type": "Identifier",
            "start": 333,
            "end": 336,
            "loc": {
              "start": {
                "line": 6,
                "column": 21
              },
              "end": {
                "line": 6,
                "column": 24
              }
            },
            "name": "Arc"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 343,
        "end": 368,
        "loc": {
          "start": {
            "line": 6,
            "column": 31
          },
          "end": {
            "line": 6,
            "column": 56
          }
        },
        "value": "../sketcher/geomobjects",
        "rawValue": "../sketcher/geomobjects",
        "raw": "'../sketcher/geomobjects'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 371,
      "end": 410,
      "loc": {
        "start": {
          "line": 7,
          "column": 0
        },
        "end": {
          "line": 7,
          "column": 39
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 378,
          "end": 385,
          "loc": {
            "start": {
              "line": 7,
              "column": 7
            },
            "end": {
              "line": 7,
              "column": 14
            }
          },
          "local": {
            "type": "Identifier",
            "start": 378,
            "end": 385,
            "loc": {
              "start": {
                "line": 7,
                "column": 7
              },
              "end": {
                "line": 7,
                "column": 14
              }
            },
            "name": "Object3"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 391,
        "end": 409,
        "loc": {
          "start": {
            "line": 7,
            "column": 20
          },
          "end": {
            "line": 7,
            "column": 38
          }
        },
        "value": "../three/object3",
        "rawValue": "../three/object3",
        "raw": "'../three/object3'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 412,
      "end": 444,
      "loc": {
        "start": {
          "line": 8,
          "column": 0
        },
        "end": {
          "line": 8,
          "column": 32
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 419,
          "end": 423,
          "loc": {
            "start": {
              "line": 8,
              "column": 7
            },
            "end": {
              "line": 8,
              "column": 11
            }
          },
          "local": {
            "type": "Identifier",
            "start": 419,
            "end": 423,
            "loc": {
              "start": {
                "line": 8,
                "column": 7
              },
              "end": {
                "line": 8,
                "column": 11
              }
            },
            "name": "View"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 429,
        "end": 443,
        "loc": {
          "start": {
            "line": 8,
            "column": 17
          },
          "end": {
            "line": 8,
            "column": 31
          }
        },
        "value": "../core/view",
        "rawValue": "../core/view",
        "raw": "'../core/view'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 446,
      "end": 472,
      "loc": {
        "start": {
          "line": 9,
          "column": 0
        },
        "end": {
          "line": 9,
          "column": 26
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 453,
          "end": 458,
          "loc": {
            "start": {
              "line": 9,
              "column": 7
            },
            "end": {
              "line": 9,
              "column": 12
            }
          },
          "local": {
            "type": "Identifier",
            "start": 453,
            "end": 458,
            "loc": {
              "start": {
                "line": 9,
                "column": 7
              },
              "end": {
                "line": 9,
                "column": 12
              }
            },
            "name": "THREE"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 464,
        "end": 471,
        "loc": {
          "start": {
            "line": 9,
            "column": 18
          },
          "end": {
            "line": 9,
            "column": 25
          }
        },
        "value": "three",
        "rawValue": "three",
        "raw": "'three'"
      }
    },
    {
      "type": "ExportDefaultDeclaration",
      "start": 476,
      "end": 34679,
      "loc": {
        "start": {
          "line": 11,
          "column": 0
        },
        "end": {
          "line": 825,
          "column": 1
        }
      },
      "declaration": {
        "type": "ClassDeclaration",
        "start": 491,
        "end": 34679,
        "loc": {
          "start": {
            "line": 11,
            "column": 15
          },
          "end": {
            "line": 825,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 497,
          "end": 503,
          "loc": {
            "start": {
              "line": 11,
              "column": 21
            },
            "end": {
              "line": 11,
              "column": 27
            }
          },
          "name": "Sketch"
        },
        "superClass": {
          "type": "Identifier",
          "start": 512,
          "end": 526,
          "loc": {
            "start": {
              "line": 11,
              "column": 36
            },
            "end": {
              "line": 11,
              "column": 50
            }
          },
          "name": "ClassCadObject"
        },
        "body": {
          "type": "ClassBody",
          "start": 527,
          "end": 34679,
          "loc": {
            "start": {
              "line": 11,
              "column": 51
            },
            "end": {
              "line": 825,
              "column": 1
            }
          },
          "body": [
            {
              "type": "MethodDefinition",
              "start": 534,
              "end": 4181,
              "loc": {
                "start": {
                  "line": 12,
                  "column": 4
                },
                "end": {
                  "line": 82,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 534,
                "end": 545,
                "loc": {
                  "start": {
                    "line": 12,
                    "column": 4
                  },
                  "end": {
                    "line": 12,
                    "column": 15
                  }
                },
                "name": "constructor"
              },
              "static": false,
              "kind": "constructor",
              "value": {
                "type": "FunctionExpression",
                "start": 545,
                "end": 4181,
                "loc": {
                  "start": {
                    "line": 12,
                    "column": 15
                  },
                  "end": {
                    "line": 82,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 548,
                  "end": 4181,
                  "loc": {
                    "start": {
                      "line": 12,
                      "column": 18
                    },
                    "end": {
                      "line": 82,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 559,
                      "end": 567,
                      "loc": {
                        "start": {
                          "line": 13,
                          "column": 8
                        },
                        "end": {
                          "line": 13,
                          "column": 16
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 559,
                        "end": 566,
                        "loc": {
                          "start": {
                            "line": 13,
                            "column": 8
                          },
                          "end": {
                            "line": 13,
                            "column": 15
                          }
                        },
                        "callee": {
                          "type": "Super",
                          "start": 559,
                          "end": 564,
                          "loc": {
                            "start": {
                              "line": 13,
                              "column": 8
                            },
                            "end": {
                              "line": 13,
                              "column": 13
                            }
                          }
                        },
                        "arguments": []
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " set of objects added with addToSketch",
                          "start": 577,
                          "end": 617,
                          "loc": {
                            "start": {
                              "line": 14,
                              "column": 8
                            },
                            "end": {
                              "line": 14,
                              "column": 48
                            }
                          },
                          "range": [
                            577,
                            617
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 627,
                      "end": 662,
                      "loc": {
                        "start": {
                          "line": 15,
                          "column": 8
                        },
                        "end": {
                          "line": 15,
                          "column": 43
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 627,
                        "end": 661,
                        "loc": {
                          "start": {
                            "line": 15,
                            "column": 8
                          },
                          "end": {
                            "line": 15,
                            "column": 42
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 627,
                          "end": 645,
                          "loc": {
                            "start": {
                              "line": 15,
                              "column": 8
                            },
                            "end": {
                              "line": 15,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 627,
                            "end": 631,
                            "loc": {
                              "start": {
                                "line": 15,
                                "column": 8
                              },
                              "end": {
                                "line": 15,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 632,
                            "end": 645,
                            "loc": {
                              "start": {
                                "line": 15,
                                "column": 13
                              },
                              "end": {
                                "line": 15,
                                "column": 26
                              }
                            },
                            "name": "sketchObjects"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 648,
                          "end": 661,
                          "loc": {
                            "start": {
                              "line": 15,
                              "column": 29
                            },
                            "end": {
                              "line": 15,
                              "column": 42
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 652,
                            "end": 659,
                            "loc": {
                              "start": {
                                "line": 15,
                                "column": 33
                              },
                              "end": {
                                "line": 15,
                                "column": 40
                              }
                            },
                            "name": "WeakSet"
                          },
                          "arguments": []
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " set of objects added with addToSketch",
                          "start": 577,
                          "end": 617,
                          "loc": {
                            "start": {
                              "line": 14,
                              "column": 8
                            },
                            "end": {
                              "line": 14,
                              "column": 48
                            }
                          },
                          "range": [
                            577,
                            617
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "Note: should not be accessed by anyone accept Sketcher",
                          "start": 672,
                          "end": 728,
                          "loc": {
                            "start": {
                              "line": 16,
                              "column": 8
                            },
                            "end": {
                              "line": 16,
                              "column": 64
                            }
                          },
                          "range": [
                            672,
                            728
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 738,
                      "end": 845,
                      "loc": {
                        "start": {
                          "line": 17,
                          "column": 8
                        },
                        "end": {
                          "line": 17,
                          "column": 115
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 738,
                        "end": 844,
                        "loc": {
                          "start": {
                            "line": 17,
                            "column": 8
                          },
                          "end": {
                            "line": 17,
                            "column": 114
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 738,
                          "end": 762,
                          "loc": {
                            "start": {
                              "line": 17,
                              "column": 8
                            },
                            "end": {
                              "line": 17,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 738,
                            "end": 742,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 8
                              },
                              "end": {
                                "line": 17,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 743,
                            "end": 762,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 13
                              },
                              "end": {
                                "line": 17,
                                "column": 32
                              }
                            },
                            "name": "infiniteBoxMaterial"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 765,
                          "end": 844,
                          "loc": {
                            "start": {
                              "line": 17,
                              "column": 35
                            },
                            "end": {
                              "line": 17,
                              "column": 114
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 769,
                            "end": 792,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 39
                              },
                              "end": {
                                "line": 17,
                                "column": 62
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 769,
                              "end": 774,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 39
                                },
                                "end": {
                                  "line": 17,
                                  "column": 44
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 775,
                              "end": 792,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 45
                                },
                                "end": {
                                  "line": 17,
                                  "column": 62
                                }
                              },
                              "name": "MeshBasicMaterial"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ObjectExpression",
                              "start": 793,
                              "end": 843,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 63
                                },
                                "end": {
                                  "line": 17,
                                  "column": 113
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 794,
                                  "end": 809,
                                  "loc": {
                                    "start": {
                                      "line": 17,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 17,
                                      "column": 79
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 794,
                                    "end": 799,
                                    "loc": {
                                      "start": {
                                        "line": 17,
                                        "column": 64
                                      },
                                      "end": {
                                        "line": 17,
                                        "column": 69
                                      }
                                    },
                                    "name": "color"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 801,
                                    "end": 809,
                                    "loc": {
                                      "start": {
                                        "line": 17,
                                        "column": 71
                                      },
                                      "end": {
                                        "line": 17,
                                        "column": 79
                                      }
                                    },
                                    "value": 4144959,
                                    "rawValue": 4144959,
                                    "raw": "0x3f3f3f"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 811,
                                  "end": 826,
                                  "loc": {
                                    "start": {
                                      "line": 17,
                                      "column": 81
                                    },
                                    "end": {
                                      "line": 17,
                                      "column": 96
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 811,
                                    "end": 820,
                                    "loc": {
                                      "start": {
                                        "line": 17,
                                        "column": 81
                                      },
                                      "end": {
                                        "line": 17,
                                        "column": 90
                                      }
                                    },
                                    "name": "wireframe"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 822,
                                    "end": 826,
                                    "loc": {
                                      "start": {
                                        "line": 17,
                                        "column": 92
                                      },
                                      "end": {
                                        "line": 17,
                                        "column": 96
                                      }
                                    },
                                    "value": true,
                                    "rawValue": true,
                                    "raw": "true"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 828,
                                  "end": 842,
                                  "loc": {
                                    "start": {
                                      "line": 17,
                                      "column": 98
                                    },
                                    "end": {
                                      "line": 17,
                                      "column": 112
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 828,
                                    "end": 835,
                                    "loc": {
                                      "start": {
                                        "line": 17,
                                        "column": 98
                                      },
                                      "end": {
                                        "line": 17,
                                        "column": 105
                                      }
                                    },
                                    "name": "visible"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 837,
                                    "end": 842,
                                    "loc": {
                                      "start": {
                                        "line": 17,
                                        "column": 107
                                      },
                                      "end": {
                                        "line": 17,
                                        "column": 112
                                      }
                                    },
                                    "value": false,
                                    "rawValue": false,
                                    "raw": "false"
                                  },
                                  "kind": "init"
                                }
                              ]
                            }
                          ]
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "Note: should not be accessed by anyone accept Sketcher",
                          "start": 672,
                          "end": 728,
                          "loc": {
                            "start": {
                              "line": 16,
                              "column": 8
                            },
                            "end": {
                              "line": 16,
                              "column": 64
                            }
                          },
                          "range": [
                            672,
                            728
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 855,
                      "end": 1095,
                      "loc": {
                        "start": {
                          "line": 18,
                          "column": 8
                        },
                        "end": {
                          "line": 22,
                          "column": 15
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 855,
                        "end": 1094,
                        "loc": {
                          "start": {
                            "line": 18,
                            "column": 8
                          },
                          "end": {
                            "line": 22,
                            "column": 14
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 855,
                          "end": 876,
                          "loc": {
                            "start": {
                              "line": 18,
                              "column": 8
                            },
                            "end": {
                              "line": 18,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 855,
                            "end": 859,
                            "loc": {
                              "start": {
                                "line": 18,
                                "column": 8
                              },
                              "end": {
                                "line": 18,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 860,
                            "end": 876,
                            "loc": {
                              "start": {
                                "line": 18,
                                "column": 13
                              },
                              "end": {
                                "line": 18,
                                "column": 29
                              }
                            },
                            "name": "frameBoxMaterial"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 879,
                          "end": 1094,
                          "loc": {
                            "start": {
                              "line": 18,
                              "column": 32
                            },
                            "end": {
                              "line": 22,
                              "column": 14
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 883,
                            "end": 906,
                            "loc": {
                              "start": {
                                "line": 18,
                                "column": 36
                              },
                              "end": {
                                "line": 18,
                                "column": 59
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 883,
                              "end": 888,
                              "loc": {
                                "start": {
                                  "line": 18,
                                  "column": 36
                                },
                                "end": {
                                  "line": 18,
                                  "column": 41
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 889,
                              "end": 906,
                              "loc": {
                                "start": {
                                  "line": 18,
                                  "column": 42
                                },
                                "end": {
                                  "line": 18,
                                  "column": 59
                                }
                              },
                              "name": "MeshPhongMaterial"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ObjectExpression",
                              "start": 921,
                              "end": 1093,
                              "loc": {
                                "start": {
                                  "line": 19,
                                  "column": 12
                                },
                                "end": {
                                  "line": 22,
                                  "column": 13
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 940,
                                  "end": 955,
                                  "loc": {
                                    "start": {
                                      "line": 20,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 20,
                                      "column": 31
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 940,
                                    "end": 945,
                                    "loc": {
                                      "start": {
                                        "line": 20,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 20,
                                        "column": 21
                                      }
                                    },
                                    "name": "color"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 947,
                                    "end": 955,
                                    "loc": {
                                      "start": {
                                        "line": 20,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 20,
                                        "column": 31
                                      }
                                    },
                                    "value": 16777215,
                                    "rawValue": 16777215,
                                    "raw": "0xffffff"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 957,
                                  "end": 975,
                                  "loc": {
                                    "start": {
                                      "line": 20,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 20,
                                      "column": 51
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 957,
                                    "end": 965,
                                    "loc": {
                                      "start": {
                                        "line": 20,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 20,
                                        "column": 41
                                      }
                                    },
                                    "name": "emissive"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 967,
                                    "end": 975,
                                    "loc": {
                                      "start": {
                                        "line": 20,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 20,
                                        "column": 51
                                      }
                                    },
                                    "value": 16777215,
                                    "rawValue": 16777215,
                                    "raw": "0xffffff"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 977,
                                  "end": 995,
                                  "loc": {
                                    "start": {
                                      "line": 20,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 20,
                                      "column": 71
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 977,
                                    "end": 985,
                                    "loc": {
                                      "start": {
                                        "line": 20,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 20,
                                        "column": 61
                                      }
                                    },
                                    "name": "specular"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 987,
                                    "end": 995,
                                    "loc": {
                                      "start": {
                                        "line": 20,
                                        "column": 63
                                      },
                                      "end": {
                                        "line": 20,
                                        "column": 71
                                      }
                                    },
                                    "value": 16777215,
                                    "rawValue": 16777215,
                                    "raw": "0xffffff"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 997,
                                  "end": 1009,
                                  "loc": {
                                    "start": {
                                      "line": 20,
                                      "column": 73
                                    },
                                    "end": {
                                      "line": 20,
                                      "column": 85
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 997,
                                    "end": 1006,
                                    "loc": {
                                      "start": {
                                        "line": 20,
                                        "column": 73
                                      },
                                      "end": {
                                        "line": 20,
                                        "column": 82
                                      }
                                    },
                                    "name": "shininess"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 1008,
                                    "end": 1009,
                                    "loc": {
                                      "start": {
                                        "line": 20,
                                        "column": 84
                                      },
                                      "end": {
                                        "line": 20,
                                        "column": 85
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 1028,
                                  "end": 1045,
                                  "loc": {
                                    "start": {
                                      "line": 21,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 21,
                                      "column": 33
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 1028,
                                    "end": 1039,
                                    "loc": {
                                      "start": {
                                        "line": 21,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 21,
                                        "column": 27
                                      }
                                    },
                                    "name": "transparent"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 1041,
                                    "end": 1045,
                                    "loc": {
                                      "start": {
                                        "line": 21,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 21,
                                        "column": 33
                                      }
                                    },
                                    "value": true,
                                    "rawValue": true,
                                    "raw": "true"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 1047,
                                  "end": 1059,
                                  "loc": {
                                    "start": {
                                      "line": 21,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 21,
                                      "column": 47
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 1047,
                                    "end": 1054,
                                    "loc": {
                                      "start": {
                                        "line": 21,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 21,
                                        "column": 42
                                      }
                                    },
                                    "name": "opacity"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 1056,
                                    "end": 1059,
                                    "loc": {
                                      "start": {
                                        "line": 21,
                                        "column": 44
                                      },
                                      "end": {
                                        "line": 21,
                                        "column": 47
                                      }
                                    },
                                    "value": 0.3,
                                    "rawValue": 0.3,
                                    "raw": "0.3"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 1061,
                                  "end": 1078,
                                  "loc": {
                                    "start": {
                                      "line": 21,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 21,
                                      "column": 66
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 1061,
                                    "end": 1071,
                                    "loc": {
                                      "start": {
                                        "line": 21,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 21,
                                        "column": 59
                                      }
                                    },
                                    "name": "depthWrite"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 1073,
                                    "end": 1078,
                                    "loc": {
                                      "start": {
                                        "line": 21,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 21,
                                        "column": 66
                                      }
                                    },
                                    "value": false,
                                    "rawValue": false,
                                    "raw": "false"
                                  },
                                  "kind": "init"
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1105,
                      "end": 1191,
                      "loc": {
                        "start": {
                          "line": 23,
                          "column": 8
                        },
                        "end": {
                          "line": 23,
                          "column": 94
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 1105,
                        "end": 1190,
                        "loc": {
                          "start": {
                            "line": 23,
                            "column": 8
                          },
                          "end": {
                            "line": 23,
                            "column": 93
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 1105,
                          "end": 1115,
                          "loc": {
                            "start": {
                              "line": 23,
                              "column": 8
                            },
                            "end": {
                              "line": 23,
                              "column": 18
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 1105,
                            "end": 1109,
                            "loc": {
                              "start": {
                                "line": 23,
                                "column": 8
                              },
                              "end": {
                                "line": 23,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1110,
                            "end": 1115,
                            "loc": {
                              "start": {
                                "line": 23,
                                "column": 13
                              },
                              "end": {
                                "line": 23,
                                "column": 18
                              }
                            },
                            "name": "__box"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 1118,
                          "end": 1190,
                          "loc": {
                            "start": {
                              "line": 23,
                              "column": 21
                            },
                            "end": {
                              "line": 23,
                              "column": 93
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 1122,
                            "end": 1132,
                            "loc": {
                              "start": {
                                "line": 23,
                                "column": 25
                              },
                              "end": {
                                "line": 23,
                                "column": 35
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 1122,
                              "end": 1127,
                              "loc": {
                                "start": {
                                  "line": 23,
                                  "column": 25
                                },
                                "end": {
                                  "line": 23,
                                  "column": 30
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1128,
                              "end": 1132,
                              "loc": {
                                "start": {
                                  "line": 23,
                                  "column": 31
                                },
                                "end": {
                                  "line": 23,
                                  "column": 35
                                }
                              },
                              "name": "Mesh"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "NewExpression",
                              "start": 1133,
                              "end": 1163,
                              "loc": {
                                "start": {
                                  "line": 23,
                                  "column": 36
                                },
                                "end": {
                                  "line": 23,
                                  "column": 66
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 1137,
                                "end": 1154,
                                "loc": {
                                  "start": {
                                    "line": 23,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 23,
                                    "column": 57
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1137,
                                  "end": 1142,
                                  "loc": {
                                    "start": {
                                      "line": 23,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 23,
                                      "column": 45
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1143,
                                  "end": 1154,
                                  "loc": {
                                    "start": {
                                      "line": 23,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 23,
                                      "column": 57
                                    }
                                  },
                                  "name": "BoxGeometry"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 1155,
                                  "end": 1156,
                                  "loc": {
                                    "start": {
                                      "line": 23,
                                      "column": 58
                                    },
                                    "end": {
                                      "line": 23,
                                      "column": 59
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                {
                                  "type": "Literal",
                                  "start": 1158,
                                  "end": 1159,
                                  "loc": {
                                    "start": {
                                      "line": 23,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 23,
                                      "column": 62
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                {
                                  "type": "Literal",
                                  "start": 1161,
                                  "end": 1162,
                                  "loc": {
                                    "start": {
                                      "line": 23,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 23,
                                      "column": 65
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                }
                              ]
                            },
                            {
                              "type": "MemberExpression",
                              "start": 1165,
                              "end": 1189,
                              "loc": {
                                "start": {
                                  "line": 23,
                                  "column": 68
                                },
                                "end": {
                                  "line": 23,
                                  "column": 92
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 1165,
                                "end": 1169,
                                "loc": {
                                  "start": {
                                    "line": 23,
                                    "column": 68
                                  },
                                  "end": {
                                    "line": 23,
                                    "column": 72
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1170,
                                "end": 1189,
                                "loc": {
                                  "start": {
                                    "line": 23,
                                    "column": 73
                                  },
                                  "end": {
                                    "line": 23,
                                    "column": 92
                                  }
                                },
                                "name": "infiniteBoxMaterial"
                              },
                              "computed": false
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1201,
                      "end": 1241,
                      "loc": {
                        "start": {
                          "line": 24,
                          "column": 8
                        },
                        "end": {
                          "line": 24,
                          "column": 48
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 1201,
                        "end": 1240,
                        "loc": {
                          "start": {
                            "line": 24,
                            "column": 8
                          },
                          "end": {
                            "line": 24,
                            "column": 47
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 1201,
                          "end": 1214,
                          "loc": {
                            "start": {
                              "line": 24,
                              "column": 8
                            },
                            "end": {
                              "line": 24,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 1201,
                            "end": 1205,
                            "loc": {
                              "start": {
                                "line": 24,
                                "column": 8
                              },
                              "end": {
                                "line": 24,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1206,
                            "end": 1214,
                            "loc": {
                              "start": {
                                "line": 24,
                                "column": 13
                              },
                              "end": {
                                "line": 24,
                                "column": 21
                              }
                            },
                            "name": "sketcher"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 1217,
                          "end": 1240,
                          "loc": {
                            "start": {
                              "line": 24,
                              "column": 24
                            },
                            "end": {
                              "line": 24,
                              "column": 47
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 1217,
                            "end": 1225,
                            "loc": {
                              "start": {
                                "line": 24,
                                "column": 24
                              },
                              "end": {
                                "line": 24,
                                "column": 32
                              }
                            },
                            "name": "Sketcher"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1226,
                            "end": 1240,
                            "loc": {
                              "start": {
                                "line": 24,
                                "column": 33
                              },
                              "end": {
                                "line": 24,
                                "column": 47
                              }
                            },
                            "name": "globalSketcher"
                          },
                          "computed": false
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " FIXME usage of global variable",
                          "start": 1242,
                          "end": 1275,
                          "loc": {
                            "start": {
                              "line": 24,
                              "column": 49
                            },
                            "end": {
                              "line": 24,
                              "column": 82
                            }
                          },
                          "range": [
                            1242,
                            1275
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 1285,
                      "end": 1351,
                      "loc": {
                        "start": {
                          "line": 25,
                          "column": 8
                        },
                        "end": {
                          "line": 25,
                          "column": 74
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 1289,
                          "end": 1302,
                          "loc": {
                            "start": {
                              "line": 25,
                              "column": 12
                            },
                            "end": {
                              "line": 25,
                              "column": 25
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 1289,
                            "end": 1295,
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 12
                              },
                              "end": {
                                "line": 25,
                                "column": 18
                              }
                            },
                            "name": "sketch",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "ThisExpression",
                            "start": 1298,
                            "end": 1302,
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 21
                              },
                              "end": {
                                "line": 25,
                                "column": 25
                              }
                            }
                          },
                          "leadingComments": null
                        },
                        {
                          "type": "VariableDeclarator",
                          "start": 1304,
                          "end": 1328,
                          "loc": {
                            "start": {
                              "line": 25,
                              "column": 27
                            },
                            "end": {
                              "line": 25,
                              "column": 51
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 1304,
                            "end": 1312,
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 27
                              },
                              "end": {
                                "line": 25,
                                "column": 35
                              }
                            },
                            "name": "sketcher"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 1315,
                            "end": 1328,
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 38
                              },
                              "end": {
                                "line": 25,
                                "column": 51
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 1315,
                              "end": 1319,
                              "loc": {
                                "start": {
                                  "line": 25,
                                  "column": 38
                                },
                                "end": {
                                  "line": 25,
                                  "column": 42
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1320,
                              "end": 1328,
                              "loc": {
                                "start": {
                                  "line": 25,
                                  "column": 43
                                },
                                "end": {
                                  "line": 25,
                                  "column": 51
                                }
                              },
                              "name": "sketcher"
                            },
                            "computed": false
                          }
                        },
                        {
                          "type": "VariableDeclarator",
                          "start": 1330,
                          "end": 1350,
                          "loc": {
                            "start": {
                              "line": 25,
                              "column": 53
                            },
                            "end": {
                              "line": 25,
                              "column": 73
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 1330,
                            "end": 1334,
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 53
                              },
                              "end": {
                                "line": 25,
                                "column": 57
                              }
                            },
                            "name": "view"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 1337,
                            "end": 1350,
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 60
                              },
                              "end": {
                                "line": 25,
                                "column": 73
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 1337,
                              "end": 1345,
                              "loc": {
                                "start": {
                                  "line": 25,
                                  "column": 60
                                },
                                "end": {
                                  "line": 25,
                                  "column": 68
                                }
                              },
                              "name": "sketcher"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1346,
                              "end": 1350,
                              "loc": {
                                "start": {
                                  "line": 25,
                                  "column": 69
                                },
                                "end": {
                                  "line": 25,
                                  "column": 73
                                }
                              },
                              "name": "view"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " FIXME usage of global variable",
                          "start": 1242,
                          "end": 1275,
                          "loc": {
                            "start": {
                              "line": 24,
                              "column": 49
                            },
                            "end": {
                              "line": 24,
                              "column": 82
                            }
                          },
                          "range": [
                            1242,
                            1275
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1361,
                      "end": 3290,
                      "loc": {
                        "start": {
                          "line": 26,
                          "column": 8
                        },
                        "end": {
                          "line": 63,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 1361,
                        "end": 3289,
                        "loc": {
                          "start": {
                            "line": 26,
                            "column": 8
                          },
                          "end": {
                            "line": 63,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 1361,
                          "end": 1432,
                          "loc": {
                            "start": {
                              "line": 26,
                              "column": 8
                            },
                            "end": {
                              "line": 28,
                              "column": 13
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 1361,
                            "end": 1429,
                            "loc": {
                              "start": {
                                "line": 26,
                                "column": 8
                              },
                              "end": {
                                "line": 28,
                                "column": 10
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 1361,
                              "end": 1389,
                              "loc": {
                                "start": {
                                  "line": 26,
                                  "column": 8
                                },
                                "end": {
                                  "line": 26,
                                  "column": 36
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 1361,
                                "end": 1371,
                                "loc": {
                                  "start": {
                                    "line": 26,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 26,
                                    "column": 18
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 1361,
                                  "end": 1365,
                                  "loc": {
                                    "start": {
                                      "line": 26,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 26,
                                      "column": 12
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1366,
                                  "end": 1371,
                                  "loc": {
                                    "start": {
                                      "line": 26,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 26,
                                      "column": 18
                                    }
                                  },
                                  "name": "__box"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1372,
                                "end": 1389,
                                "loc": {
                                  "start": {
                                    "line": 26,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 26,
                                    "column": 36
                                  }
                                },
                                "name": "createInteraction"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ObjectExpression",
                                "start": 1390,
                                "end": 1428,
                                "loc": {
                                  "start": {
                                    "line": 26,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 28,
                                    "column": 9
                                  }
                                },
                                "properties": [
                                  {
                                    "type": "Property",
                                    "start": 1405,
                                    "end": 1416,
                                    "loc": {
                                      "start": {
                                        "line": 27,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 27,
                                        "column": 23
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 1405,
                                      "end": 1413,
                                      "loc": {
                                        "start": {
                                          "line": 27,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 27,
                                          "column": 20
                                        }
                                      },
                                      "name": "priority"
                                    },
                                    "value": {
                                      "type": "Literal",
                                      "start": 1415,
                                      "end": 1416,
                                      "loc": {
                                        "start": {
                                          "line": 27,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 27,
                                          "column": 23
                                        }
                                      },
                                      "value": 1,
                                      "rawValue": 1,
                                      "raw": "1"
                                    },
                                    "kind": "init"
                                  }
                                ]
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1430,
                            "end": 1432,
                            "loc": {
                              "start": {
                                "line": 28,
                                "column": 11
                              },
                              "end": {
                                "line": 28,
                                "column": 13
                              }
                            },
                            "name": "on"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ObjectExpression",
                            "start": 1433,
                            "end": 3288,
                            "loc": {
                              "start": {
                                "line": 28,
                                "column": 14
                              },
                              "end": {
                                "line": 63,
                                "column": 9
                              }
                            },
                            "properties": [
                              {
                                "type": "Property",
                                "start": 1448,
                                "end": 1767,
                                "loc": {
                                  "start": {
                                    "line": 29,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 34,
                                    "column": 13
                                  }
                                },
                                "method": true,
                                "shorthand": false,
                                "computed": true,
                                "key": {
                                  "type": "MemberExpression",
                                  "start": 1449,
                                  "end": 1483,
                                  "loc": {
                                    "start": {
                                      "line": 29,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 29,
                                      "column": 47
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 1449,
                                    "end": 1475,
                                    "loc": {
                                      "start": {
                                        "line": 29,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 29,
                                        "column": 39
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 1449,
                                      "end": 1463,
                                      "loc": {
                                        "start": {
                                          "line": 29,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 29,
                                          "column": 27
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 1449,
                                        "end": 1456,
                                        "loc": {
                                          "start": {
                                            "line": 29,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 29,
                                            "column": 20
                                          }
                                        },
                                        "name": "Object3"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1457,
                                        "end": 1463,
                                        "loc": {
                                          "start": {
                                            "line": 29,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 29,
                                            "column": 27
                                          }
                                        },
                                        "name": "Events"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 1464,
                                      "end": 1475,
                                      "loc": {
                                        "start": {
                                          "line": 29,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 29,
                                          "column": 39
                                        }
                                      },
                                      "name": "Interaction"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1476,
                                    "end": 1483,
                                    "loc": {
                                      "start": {
                                        "line": 29,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 29,
                                        "column": 47
                                      }
                                    },
                                    "name": "Clicked"
                                  },
                                  "computed": false
                                },
                                "kind": "init",
                                "value": {
                                  "type": "FunctionExpression",
                                  "start": 1484,
                                  "end": 1767,
                                  "loc": {
                                    "start": {
                                      "line": 29,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 34,
                                      "column": 13
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 1485,
                                      "end": 1489,
                                      "loc": {
                                        "start": {
                                          "line": 29,
                                          "column": 49
                                        },
                                        "end": {
                                          "line": 29,
                                          "column": 53
                                        }
                                      },
                                      "name": "data"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 1491,
                                    "end": 1767,
                                    "loc": {
                                      "start": {
                                        "line": 29,
                                        "column": 55
                                      },
                                      "end": {
                                        "line": 34,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "SwitchStatement",
                                        "start": 1510,
                                        "end": 1752,
                                        "loc": {
                                          "start": {
                                            "line": 30,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 33,
                                            "column": 17
                                          }
                                        },
                                        "discriminant": {
                                          "type": "MemberExpression",
                                          "start": 1518,
                                          "end": 1550,
                                          "loc": {
                                            "start": {
                                              "line": 30,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 30,
                                              "column": 56
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 1518,
                                            "end": 1543,
                                            "loc": {
                                              "start": {
                                                "line": 30,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 30,
                                                "column": 49
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 1518,
                                              "end": 1535,
                                              "loc": {
                                                "start": {
                                                  "line": 30,
                                                  "column": 24
                                                },
                                                "end": {
                                                  "line": 30,
                                                  "column": 41
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 1518,
                                                "end": 1528,
                                                "loc": {
                                                  "start": {
                                                    "line": 30,
                                                    "column": 24
                                                  },
                                                  "end": {
                                                    "line": 30,
                                                    "column": 34
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 1518,
                                                  "end": 1522,
                                                  "loc": {
                                                    "start": {
                                                      "line": 30,
                                                      "column": 24
                                                    },
                                                    "end": {
                                                      "line": 30,
                                                      "column": 28
                                                    }
                                                  },
                                                  "name": "view"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 1523,
                                                  "end": 1528,
                                                  "loc": {
                                                    "start": {
                                                      "line": 30,
                                                      "column": 29
                                                    },
                                                    "end": {
                                                      "line": 30,
                                                      "column": 34
                                                    }
                                                  },
                                                  "name": "input"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 1529,
                                                "end": 1535,
                                                "loc": {
                                                  "start": {
                                                    "line": 30,
                                                    "column": 35
                                                  },
                                                  "end": {
                                                    "line": 30,
                                                    "column": 41
                                                  }
                                                },
                                                "name": "recent"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1536,
                                              "end": 1543,
                                              "loc": {
                                                "start": {
                                                  "line": 30,
                                                  "column": 42
                                                },
                                                "end": {
                                                  "line": 30,
                                                  "column": 49
                                                }
                                              },
                                              "name": "mouseup"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 1544,
                                            "end": 1550,
                                            "loc": {
                                              "start": {
                                                "line": 30,
                                                "column": 50
                                              },
                                              "end": {
                                                "line": 30,
                                                "column": 56
                                              }
                                            },
                                            "name": "button"
                                          },
                                          "computed": false
                                        },
                                        "cases": [
                                          {
                                            "type": "SwitchCase",
                                            "start": 1575,
                                            "end": 1656,
                                            "loc": {
                                              "start": {
                                                "line": 31,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 31,
                                                "column": 101
                                              }
                                            },
                                            "consequent": [
                                              {
                                                "type": "ExpressionStatement",
                                                "start": 1583,
                                                "end": 1649,
                                                "loc": {
                                                  "start": {
                                                    "line": 31,
                                                    "column": 28
                                                  },
                                                  "end": {
                                                    "line": 31,
                                                    "column": 94
                                                  }
                                                },
                                                "expression": {
                                                  "type": "CallExpression",
                                                  "start": 1583,
                                                  "end": 1648,
                                                  "loc": {
                                                    "start": {
                                                      "line": 31,
                                                      "column": 28
                                                    },
                                                    "end": {
                                                      "line": 31,
                                                      "column": 93
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "Identifier",
                                                    "start": 1583,
                                                    "end": 1595,
                                                    "loc": {
                                                      "start": {
                                                        "line": 31,
                                                        "column": 28
                                                      },
                                                      "end": {
                                                        "line": 31,
                                                        "column": 40
                                                      }
                                                    },
                                                    "name": "trackPromise"
                                                  },
                                                  "arguments": [
                                                    {
                                                      "type": "CallExpression",
                                                      "start": 1596,
                                                      "end": 1647,
                                                      "loc": {
                                                        "start": {
                                                          "line": 31,
                                                          "column": 41
                                                        },
                                                        "end": {
                                                          "line": 31,
                                                          "column": 92
                                                        }
                                                      },
                                                      "callee": {
                                                        "type": "MemberExpression",
                                                        "start": 1596,
                                                        "end": 1611,
                                                        "loc": {
                                                          "start": {
                                                            "line": 31,
                                                            "column": 41
                                                          },
                                                          "end": {
                                                            "line": 31,
                                                            "column": 56
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 1596,
                                                          "end": 1603,
                                                          "loc": {
                                                            "start": {
                                                              "line": 31,
                                                              "column": 41
                                                            },
                                                            "end": {
                                                              "line": 31,
                                                              "column": 48
                                                            }
                                                          },
                                                          "name": "Promise"
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 1604,
                                                          "end": 1611,
                                                          "loc": {
                                                            "start": {
                                                              "line": 31,
                                                              "column": 49
                                                            },
                                                            "end": {
                                                              "line": 31,
                                                              "column": 56
                                                            }
                                                          },
                                                          "name": "resolve"
                                                        },
                                                        "computed": false
                                                      },
                                                      "arguments": [
                                                        {
                                                          "type": "CallExpression",
                                                          "start": 1612,
                                                          "end": 1646,
                                                          "loc": {
                                                            "start": {
                                                              "line": 31,
                                                              "column": 57
                                                            },
                                                            "end": {
                                                              "line": 31,
                                                              "column": 91
                                                            }
                                                          },
                                                          "callee": {
                                                            "type": "MemberExpression",
                                                            "start": 1612,
                                                            "end": 1638,
                                                            "loc": {
                                                              "start": {
                                                                "line": 31,
                                                                "column": 57
                                                              },
                                                              "end": {
                                                                "line": 31,
                                                                "column": 83
                                                              }
                                                            },
                                                            "object": {
                                                              "type": "Identifier",
                                                              "start": 1612,
                                                              "end": 1620,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 31,
                                                                  "column": 57
                                                                },
                                                                "end": {
                                                                  "line": 31,
                                                                  "column": 65
                                                                }
                                                              },
                                                              "name": "sketcher"
                                                            },
                                                            "property": {
                                                              "type": "Identifier",
                                                              "start": 1621,
                                                              "end": 1638,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 31,
                                                                  "column": 66
                                                                },
                                                                "end": {
                                                                  "line": 31,
                                                                  "column": 83
                                                                }
                                                              },
                                                              "name": "sketchAreaClicked"
                                                            },
                                                            "computed": false
                                                          },
                                                          "arguments": [
                                                            {
                                                              "type": "Identifier",
                                                              "start": 1639,
                                                              "end": 1645,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 31,
                                                                  "column": 84
                                                                },
                                                                "end": {
                                                                  "line": 31,
                                                                  "column": 90
                                                                }
                                                              },
                                                              "name": "sketch"
                                                            }
                                                          ]
                                                        }
                                                      ]
                                                    }
                                                  ]
                                                }
                                              },
                                              {
                                                "type": "BreakStatement",
                                                "start": 1650,
                                                "end": 1656,
                                                "loc": {
                                                  "start": {
                                                    "line": 31,
                                                    "column": 95
                                                  },
                                                  "end": {
                                                    "line": 31,
                                                    "column": 101
                                                  }
                                                },
                                                "label": null
                                              }
                                            ],
                                            "test": {
                                              "type": "Literal",
                                              "start": 1580,
                                              "end": 1581,
                                              "loc": {
                                                "start": {
                                                  "line": 31,
                                                  "column": 25
                                                },
                                                "end": {
                                                  "line": 31,
                                                  "column": 26
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          },
                                          {
                                            "type": "SwitchCase",
                                            "start": 1678,
                                            "end": 1733,
                                            "loc": {
                                              "start": {
                                                "line": 32,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 32,
                                                "column": 75
                                              }
                                            },
                                            "consequent": [
                                              {
                                                "type": "ExpressionStatement",
                                                "start": 1686,
                                                "end": 1726,
                                                "loc": {
                                                  "start": {
                                                    "line": 32,
                                                    "column": 28
                                                  },
                                                  "end": {
                                                    "line": 32,
                                                    "column": 68
                                                  }
                                                },
                                                "expression": {
                                                  "type": "CallExpression",
                                                  "start": 1686,
                                                  "end": 1725,
                                                  "loc": {
                                                    "start": {
                                                      "line": 32,
                                                      "column": 28
                                                    },
                                                    "end": {
                                                      "line": 32,
                                                      "column": 67
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "MemberExpression",
                                                    "start": 1686,
                                                    "end": 1717,
                                                    "loc": {
                                                      "start": {
                                                        "line": 32,
                                                        "column": 28
                                                      },
                                                      "end": {
                                                        "line": 32,
                                                        "column": 59
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 1686,
                                                      "end": 1694,
                                                      "loc": {
                                                        "start": {
                                                          "line": 32,
                                                          "column": 28
                                                        },
                                                        "end": {
                                                          "line": 32,
                                                          "column": 36
                                                        }
                                                      },
                                                      "name": "sketcher"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 1695,
                                                      "end": 1717,
                                                      "loc": {
                                                        "start": {
                                                          "line": 32,
                                                          "column": 37
                                                        },
                                                        "end": {
                                                          "line": 32,
                                                          "column": 59
                                                        }
                                                      },
                                                      "name": "sketchAreaRightClicked"
                                                    },
                                                    "computed": false
                                                  },
                                                  "arguments": [
                                                    {
                                                      "type": "Identifier",
                                                      "start": 1718,
                                                      "end": 1724,
                                                      "loc": {
                                                        "start": {
                                                          "line": 32,
                                                          "column": 60
                                                        },
                                                        "end": {
                                                          "line": 32,
                                                          "column": 66
                                                        }
                                                      },
                                                      "name": "sketch"
                                                    }
                                                  ]
                                                }
                                              },
                                              {
                                                "type": "BreakStatement",
                                                "start": 1727,
                                                "end": 1733,
                                                "loc": {
                                                  "start": {
                                                    "line": 32,
                                                    "column": 69
                                                  },
                                                  "end": {
                                                    "line": 32,
                                                    "column": 75
                                                  }
                                                },
                                                "label": null
                                              }
                                            ],
                                            "test": {
                                              "type": "Literal",
                                              "start": 1683,
                                              "end": 1684,
                                              "loc": {
                                                "start": {
                                                  "line": 32,
                                                  "column": 25
                                                },
                                                "end": {
                                                  "line": 32,
                                                  "column": 26
                                                }
                                              },
                                              "value": 2,
                                              "rawValue": 2,
                                              "raw": "2"
                                            }
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                }
                              },
                              {
                                "type": "Property",
                                "start": 1782,
                                "end": 3276,
                                "loc": {
                                  "start": {
                                    "line": 35,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 62,
                                    "column": 13
                                  }
                                },
                                "method": true,
                                "shorthand": false,
                                "computed": true,
                                "key": {
                                  "type": "MemberExpression",
                                  "start": 1783,
                                  "end": 1816,
                                  "loc": {
                                    "start": {
                                      "line": 35,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 35,
                                      "column": 46
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 1783,
                                    "end": 1807,
                                    "loc": {
                                      "start": {
                                        "line": 35,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 35,
                                        "column": 37
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 1783,
                                      "end": 1797,
                                      "loc": {
                                        "start": {
                                          "line": 35,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 35,
                                          "column": 27
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 1783,
                                        "end": 1790,
                                        "loc": {
                                          "start": {
                                            "line": 35,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 35,
                                            "column": 20
                                          }
                                        },
                                        "name": "Object3"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1791,
                                        "end": 1797,
                                        "loc": {
                                          "start": {
                                            "line": 35,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 35,
                                            "column": 27
                                          }
                                        },
                                        "name": "Events"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 1798,
                                      "end": 1807,
                                      "loc": {
                                        "start": {
                                          "line": 35,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 35,
                                          "column": 37
                                        }
                                      },
                                      "name": "Lifecycle"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1808,
                                    "end": 1816,
                                    "loc": {
                                      "start": {
                                        "line": 35,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 35,
                                        "column": 46
                                      }
                                    },
                                    "name": "Rendered"
                                  },
                                  "computed": false
                                },
                                "kind": "init",
                                "value": {
                                  "type": "FunctionExpression",
                                  "start": 1817,
                                  "end": 3276,
                                  "loc": {
                                    "start": {
                                      "line": 35,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 62,
                                      "column": 13
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 1820,
                                    "end": 3276,
                                    "loc": {
                                      "start": {
                                        "line": 35,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 62,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "IfStatement",
                                        "start": 1839,
                                        "end": 1906,
                                        "loc": {
                                          "start": {
                                            "line": 36,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 37,
                                            "column": 27
                                          }
                                        },
                                        "test": {
                                          "type": "BinaryExpression",
                                          "start": 1843,
                                          "end": 1876,
                                          "loc": {
                                            "start": {
                                              "line": 36,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 36,
                                              "column": 53
                                            }
                                          },
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 1843,
                                            "end": 1865,
                                            "loc": {
                                              "start": {
                                                "line": 36,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 36,
                                                "column": 42
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 1843,
                                              "end": 1851,
                                              "loc": {
                                                "start": {
                                                  "line": 36,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 36,
                                                  "column": 28
                                                }
                                              },
                                              "name": "sketcher"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1852,
                                              "end": 1865,
                                              "loc": {
                                                "start": {
                                                  "line": 36,
                                                  "column": 29
                                                },
                                                "end": {
                                                  "line": 36,
                                                  "column": 42
                                                }
                                              },
                                              "name": "currentSketch"
                                            },
                                            "computed": false
                                          },
                                          "operator": "!==",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 1870,
                                            "end": 1876,
                                            "loc": {
                                              "start": {
                                                "line": 36,
                                                "column": 47
                                              },
                                              "end": {
                                                "line": 36,
                                                "column": 53
                                              }
                                            },
                                            "name": "sketch"
                                          }
                                        },
                                        "consequent": {
                                          "type": "ReturnStatement",
                                          "start": 1899,
                                          "end": 1906,
                                          "loc": {
                                            "start": {
                                              "line": 37,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 37,
                                              "column": 27
                                            }
                                          },
                                          "argument": null
                                        },
                                        "alternate": null
                                      },
                                      {
                                        "type": "IfStatement",
                                        "start": 1924,
                                        "end": 1977,
                                        "loc": {
                                          "start": {
                                            "line": 38,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 39,
                                            "column": 27
                                          }
                                        },
                                        "test": {
                                          "type": "UnaryExpression",
                                          "start": 1928,
                                          "end": 1947,
                                          "loc": {
                                            "start": {
                                              "line": 38,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 38,
                                              "column": 39
                                            }
                                          },
                                          "operator": "!",
                                          "prefix": true,
                                          "argument": {
                                            "type": "MemberExpression",
                                            "start": 1929,
                                            "end": 1947,
                                            "loc": {
                                              "start": {
                                                "line": 38,
                                                "column": 21
                                              },
                                              "end": {
                                                "line": 38,
                                                "column": 39
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 1929,
                                              "end": 1939,
                                              "loc": {
                                                "start": {
                                                  "line": 38,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 38,
                                                  "column": 31
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 1929,
                                                "end": 1933,
                                                "loc": {
                                                  "start": {
                                                    "line": 38,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 38,
                                                    "column": 25
                                                  }
                                                },
                                                "name": "view"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 1934,
                                                "end": 1939,
                                                "loc": {
                                                  "start": {
                                                    "line": 38,
                                                    "column": 26
                                                  },
                                                  "end": {
                                                    "line": 38,
                                                    "column": 31
                                                  }
                                                },
                                                "name": "input"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1940,
                                              "end": 1947,
                                              "loc": {
                                                "start": {
                                                  "line": 38,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 38,
                                                  "column": 39
                                                }
                                              },
                                              "name": "enabled"
                                            },
                                            "computed": false
                                          }
                                        },
                                        "consequent": {
                                          "type": "ReturnStatement",
                                          "start": 1970,
                                          "end": 1977,
                                          "loc": {
                                            "start": {
                                              "line": 39,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 39,
                                              "column": 27
                                            }
                                          },
                                          "argument": null
                                        },
                                        "alternate": null
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 1997,
                                        "end": 2033,
                                        "loc": {
                                          "start": {
                                            "line": 41,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 41,
                                            "column": 52
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 1997,
                                          "end": 2032,
                                          "loc": {
                                            "start": {
                                              "line": 41,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 41,
                                              "column": 51
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 1997,
                                            "end": 2014,
                                            "loc": {
                                              "start": {
                                                "line": 41,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 41,
                                                "column": 33
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 1997,
                                              "end": 2003,
                                              "loc": {
                                                "start": {
                                                  "line": 41,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 41,
                                                  "column": 22
                                                }
                                              },
                                              "name": "sketch"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2004,
                                              "end": 2014,
                                              "loc": {
                                                "start": {
                                                  "line": 41,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 41,
                                                  "column": 33
                                                }
                                              },
                                              "name": "updateGrid"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "MemberExpression",
                                              "start": 2015,
                                              "end": 2031,
                                              "loc": {
                                                "start": {
                                                  "line": 41,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 41,
                                                  "column": 50
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 2015,
                                                "end": 2026,
                                                "loc": {
                                                  "start": {
                                                    "line": 41,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 41,
                                                    "column": 45
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 2015,
                                                  "end": 2019,
                                                  "loc": {
                                                    "start": {
                                                      "line": 41,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 41,
                                                      "column": 38
                                                    }
                                                  },
                                                  "name": "view"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2020,
                                                  "end": 2026,
                                                  "loc": {
                                                    "start": {
                                                      "line": 41,
                                                      "column": 39
                                                    },
                                                    "end": {
                                                      "line": 41,
                                                      "column": 45
                                                    }
                                                  },
                                                  "name": "camera"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 2027,
                                                "end": 2031,
                                                "loc": {
                                                  "start": {
                                                    "line": 41,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 41,
                                                    "column": 50
                                                  }
                                                },
                                                "name": "size"
                                              },
                                              "computed": false
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        "type": "IfStatement",
                                        "start": 2051,
                                        "end": 2113,
                                        "loc": {
                                          "start": {
                                            "line": 42,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 43,
                                            "column": 27
                                          }
                                        },
                                        "test": {
                                          "type": "UnaryExpression",
                                          "start": 2055,
                                          "end": 2083,
                                          "loc": {
                                            "start": {
                                              "line": 42,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 42,
                                              "column": 48
                                            }
                                          },
                                          "operator": "!",
                                          "prefix": true,
                                          "argument": {
                                            "type": "MemberExpression",
                                            "start": 2056,
                                            "end": 2083,
                                            "loc": {
                                              "start": {
                                                "line": 42,
                                                "column": 21
                                              },
                                              "end": {
                                                "line": 42,
                                                "column": 48
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 2056,
                                              "end": 2073,
                                              "loc": {
                                                "start": {
                                                  "line": 42,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 42,
                                                  "column": 38
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 2056,
                                                "end": 2066,
                                                "loc": {
                                                  "start": {
                                                    "line": 42,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 42,
                                                    "column": 31
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 2056,
                                                  "end": 2060,
                                                  "loc": {
                                                    "start": {
                                                      "line": 42,
                                                      "column": 21
                                                    },
                                                    "end": {
                                                      "line": 42,
                                                      "column": 25
                                                    }
                                                  },
                                                  "name": "view"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2061,
                                                  "end": 2066,
                                                  "loc": {
                                                    "start": {
                                                      "line": 42,
                                                      "column": 26
                                                    },
                                                    "end": {
                                                      "line": 42,
                                                      "column": 31
                                                    }
                                                  },
                                                  "name": "input"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 2067,
                                                "end": 2073,
                                                "loc": {
                                                  "start": {
                                                    "line": 42,
                                                    "column": 32
                                                  },
                                                  "end": {
                                                    "line": 42,
                                                    "column": 38
                                                  }
                                                },
                                                "name": "recent"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2074,
                                              "end": 2083,
                                              "loc": {
                                                "start": {
                                                  "line": 42,
                                                  "column": 39
                                                },
                                                "end": {
                                                  "line": 42,
                                                  "column": 48
                                                }
                                              },
                                              "name": "mousemove"
                                            },
                                            "computed": false
                                          }
                                        },
                                        "consequent": {
                                          "type": "ReturnStatement",
                                          "start": 2106,
                                          "end": 2113,
                                          "loc": {
                                            "start": {
                                              "line": 43,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 43,
                                              "column": 27
                                            }
                                          },
                                          "argument": null,
                                          "leadingComments": null,
                                          "trailingComments": null
                                        },
                                        "alternate": null,
                                        "trailingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "no one moved the mouse",
                                            "start": 2114,
                                            "end": 2138,
                                            "loc": {
                                              "start": {
                                                "line": 43,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 43,
                                                "column": 52
                                              }
                                            },
                                            "range": [
                                              2114,
                                              2138
                                            ]
                                          },
                                          {
                                            "type": "CommentLine",
                                            "value": "mouse coordinates in pixels",
                                            "start": 2156,
                                            "end": 2185,
                                            "loc": {
                                              "start": {
                                                "line": 44,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 44,
                                                "column": 45
                                              }
                                            },
                                            "range": [
                                              2156,
                                              2185
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 2203,
                                        "end": 2308,
                                        "loc": {
                                          "start": {
                                            "line": 45,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 45,
                                            "column": 121
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 2207,
                                            "end": 2307,
                                            "loc": {
                                              "start": {
                                                "line": 45,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 45,
                                                "column": 120
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 2207,
                                              "end": 2213,
                                              "loc": {
                                                "start": {
                                                  "line": 45,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 45,
                                                  "column": 26
                                                }
                                              },
                                              "name": "point2",
                                              "leadingComments": null
                                            },
                                            "init": {
                                              "type": "NewExpression",
                                              "start": 2216,
                                              "end": 2307,
                                              "loc": {
                                                "start": {
                                                  "line": 45,
                                                  "column": 29
                                                },
                                                "end": {
                                                  "line": 45,
                                                  "column": 120
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 2220,
                                                "end": 2233,
                                                "loc": {
                                                  "start": {
                                                    "line": 45,
                                                    "column": 33
                                                  },
                                                  "end": {
                                                    "line": 45,
                                                    "column": 46
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 2220,
                                                  "end": 2225,
                                                  "loc": {
                                                    "start": {
                                                      "line": 45,
                                                      "column": 33
                                                    },
                                                    "end": {
                                                      "line": 45,
                                                      "column": 38
                                                    }
                                                  },
                                                  "name": "THREE"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2226,
                                                  "end": 2233,
                                                  "loc": {
                                                    "start": {
                                                      "line": 45,
                                                      "column": 39
                                                    },
                                                    "end": {
                                                      "line": 45,
                                                      "column": 46
                                                    }
                                                  },
                                                  "name": "Vector2"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "MemberExpression",
                                                  "start": 2234,
                                                  "end": 2269,
                                                  "loc": {
                                                    "start": {
                                                      "line": 45,
                                                      "column": 47
                                                    },
                                                    "end": {
                                                      "line": 45,
                                                      "column": 82
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 2234,
                                                    "end": 2261,
                                                    "loc": {
                                                      "start": {
                                                        "line": 45,
                                                        "column": 47
                                                      },
                                                      "end": {
                                                        "line": 45,
                                                        "column": 74
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "MemberExpression",
                                                      "start": 2234,
                                                      "end": 2251,
                                                      "loc": {
                                                        "start": {
                                                          "line": 45,
                                                          "column": 47
                                                        },
                                                        "end": {
                                                          "line": 45,
                                                          "column": 64
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "MemberExpression",
                                                        "start": 2234,
                                                        "end": 2244,
                                                        "loc": {
                                                          "start": {
                                                            "line": 45,
                                                            "column": 47
                                                          },
                                                          "end": {
                                                            "line": 45,
                                                            "column": 57
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 2234,
                                                          "end": 2238,
                                                          "loc": {
                                                            "start": {
                                                              "line": 45,
                                                              "column": 47
                                                            },
                                                            "end": {
                                                              "line": 45,
                                                              "column": 51
                                                            }
                                                          },
                                                          "name": "view"
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 2239,
                                                          "end": 2244,
                                                          "loc": {
                                                            "start": {
                                                              "line": 45,
                                                              "column": 52
                                                            },
                                                            "end": {
                                                              "line": 45,
                                                              "column": 57
                                                            }
                                                          },
                                                          "name": "input"
                                                        },
                                                        "computed": false
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 2245,
                                                        "end": 2251,
                                                        "loc": {
                                                          "start": {
                                                            "line": 45,
                                                            "column": 58
                                                          },
                                                          "end": {
                                                            "line": 45,
                                                            "column": 64
                                                          }
                                                        },
                                                        "name": "recent"
                                                      },
                                                      "computed": false
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2252,
                                                      "end": 2261,
                                                      "loc": {
                                                        "start": {
                                                          "line": 45,
                                                          "column": 65
                                                        },
                                                        "end": {
                                                          "line": 45,
                                                          "column": 74
                                                        }
                                                      },
                                                      "name": "mousemove"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2262,
                                                    "end": 2269,
                                                    "loc": {
                                                      "start": {
                                                        "line": 45,
                                                        "column": 75
                                                      },
                                                      "end": {
                                                        "line": 45,
                                                        "column": 82
                                                      }
                                                    },
                                                    "name": "offsetX"
                                                  },
                                                  "computed": false
                                                },
                                                {
                                                  "type": "MemberExpression",
                                                  "start": 2271,
                                                  "end": 2306,
                                                  "loc": {
                                                    "start": {
                                                      "line": 45,
                                                      "column": 84
                                                    },
                                                    "end": {
                                                      "line": 45,
                                                      "column": 119
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 2271,
                                                    "end": 2298,
                                                    "loc": {
                                                      "start": {
                                                        "line": 45,
                                                        "column": 84
                                                      },
                                                      "end": {
                                                        "line": 45,
                                                        "column": 111
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "MemberExpression",
                                                      "start": 2271,
                                                      "end": 2288,
                                                      "loc": {
                                                        "start": {
                                                          "line": 45,
                                                          "column": 84
                                                        },
                                                        "end": {
                                                          "line": 45,
                                                          "column": 101
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "MemberExpression",
                                                        "start": 2271,
                                                        "end": 2281,
                                                        "loc": {
                                                          "start": {
                                                            "line": 45,
                                                            "column": 84
                                                          },
                                                          "end": {
                                                            "line": 45,
                                                            "column": 94
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 2271,
                                                          "end": 2275,
                                                          "loc": {
                                                            "start": {
                                                              "line": 45,
                                                              "column": 84
                                                            },
                                                            "end": {
                                                              "line": 45,
                                                              "column": 88
                                                            }
                                                          },
                                                          "name": "view"
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 2276,
                                                          "end": 2281,
                                                          "loc": {
                                                            "start": {
                                                              "line": 45,
                                                              "column": 89
                                                            },
                                                            "end": {
                                                              "line": 45,
                                                              "column": 94
                                                            }
                                                          },
                                                          "name": "input"
                                                        },
                                                        "computed": false
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 2282,
                                                        "end": 2288,
                                                        "loc": {
                                                          "start": {
                                                            "line": 45,
                                                            "column": 95
                                                          },
                                                          "end": {
                                                            "line": 45,
                                                            "column": 101
                                                          }
                                                        },
                                                        "name": "recent"
                                                      },
                                                      "computed": false
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2289,
                                                      "end": 2298,
                                                      "loc": {
                                                        "start": {
                                                          "line": 45,
                                                          "column": 102
                                                        },
                                                        "end": {
                                                          "line": 45,
                                                          "column": 111
                                                        }
                                                      },
                                                      "name": "mousemove"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2299,
                                                    "end": 2306,
                                                    "loc": {
                                                      "start": {
                                                        "line": 45,
                                                        "column": 112
                                                      },
                                                      "end": {
                                                        "line": 45,
                                                        "column": 119
                                                      }
                                                    },
                                                    "name": "offsetY"
                                                  },
                                                  "computed": false
                                                }
                                              ]
                                            },
                                            "leadingComments": null
                                          }
                                        ],
                                        "kind": "let",
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "no one moved the mouse",
                                            "start": 2114,
                                            "end": 2138,
                                            "loc": {
                                              "start": {
                                                "line": 43,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 43,
                                                "column": 52
                                              }
                                            },
                                            "range": [
                                              2114,
                                              2138
                                            ]
                                          },
                                          {
                                            "type": "CommentLine",
                                            "value": "mouse coordinates in pixels",
                                            "start": 2156,
                                            "end": 2185,
                                            "loc": {
                                              "start": {
                                                "line": 44,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 44,
                                                "column": 45
                                              }
                                            },
                                            "range": [
                                              2156,
                                              2185
                                            ]
                                          }
                                        ],
                                        "trailingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "3D line of corresponding points (in world coords)",
                                            "start": 2326,
                                            "end": 2377,
                                            "loc": {
                                              "start": {
                                                "line": 46,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 46,
                                                "column": 67
                                              }
                                            },
                                            "range": [
                                              2326,
                                              2377
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 2395,
                                        "end": 2433,
                                        "loc": {
                                          "start": {
                                            "line": 47,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 47,
                                            "column": 54
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 2399,
                                            "end": 2432,
                                            "loc": {
                                              "start": {
                                                "line": 47,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 47,
                                                "column": 53
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 2399,
                                              "end": 2404,
                                              "loc": {
                                                "start": {
                                                  "line": 47,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 47,
                                                  "column": 25
                                                }
                                              },
                                              "name": "line3",
                                              "leadingComments": null
                                            },
                                            "init": {
                                              "type": "CallExpression",
                                              "start": 2407,
                                              "end": 2432,
                                              "loc": {
                                                "start": {
                                                  "line": 47,
                                                  "column": 28
                                                },
                                                "end": {
                                                  "line": 47,
                                                  "column": 53
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 2407,
                                                "end": 2424,
                                                "loc": {
                                                  "start": {
                                                    "line": 47,
                                                    "column": 28
                                                  },
                                                  "end": {
                                                    "line": 47,
                                                    "column": 45
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 2407,
                                                  "end": 2411,
                                                  "loc": {
                                                    "start": {
                                                      "line": 47,
                                                      "column": 28
                                                    },
                                                    "end": {
                                                      "line": 47,
                                                      "column": 32
                                                    }
                                                  },
                                                  "name": "view"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2412,
                                                  "end": 2424,
                                                  "loc": {
                                                    "start": {
                                                      "line": 47,
                                                      "column": 33
                                                    },
                                                    "end": {
                                                      "line": 47,
                                                      "column": 45
                                                    }
                                                  },
                                                  "name": "getViewLine3"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 2425,
                                                  "end": 2431,
                                                  "loc": {
                                                    "start": {
                                                      "line": 47,
                                                      "column": 46
                                                    },
                                                    "end": {
                                                      "line": 47,
                                                      "column": 52
                                                    }
                                                  },
                                                  "name": "point2"
                                                }
                                              ]
                                            },
                                            "leadingComments": null
                                          }
                                        ],
                                        "kind": "let",
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "3D line of corresponding points (in world coords)",
                                            "start": 2326,
                                            "end": 2377,
                                            "loc": {
                                              "start": {
                                                "line": 46,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 46,
                                                "column": 67
                                              }
                                            },
                                            "range": [
                                              2326,
                                              2377
                                            ]
                                          }
                                        ],
                                        "trailingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "transform line from world to sketch coords",
                                            "start": 2451,
                                            "end": 2495,
                                            "loc": {
                                              "start": {
                                                "line": 48,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 48,
                                                "column": 60
                                              }
                                            },
                                            "range": [
                                              2451,
                                              2495
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 2513,
                                        "end": 2583,
                                        "loc": {
                                          "start": {
                                            "line": 49,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 49,
                                            "column": 86
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 2517,
                                            "end": 2582,
                                            "loc": {
                                              "start": {
                                                "line": 49,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 49,
                                                "column": 85
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 2517,
                                              "end": 2529,
                                              "loc": {
                                                "start": {
                                                  "line": 49,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 49,
                                                  "column": 32
                                                }
                                              },
                                              "name": "worldToLocal",
                                              "leadingComments": null
                                            },
                                            "init": {
                                              "type": "CallExpression",
                                              "start": 2532,
                                              "end": 2582,
                                              "loc": {
                                                "start": {
                                                  "line": 49,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 49,
                                                  "column": 85
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 2532,
                                                "end": 2562,
                                                "loc": {
                                                  "start": {
                                                    "line": 49,
                                                    "column": 35
                                                  },
                                                  "end": {
                                                    "line": 49,
                                                    "column": 65
                                                  }
                                                },
                                                "object": {
                                                  "type": "NewExpression",
                                                  "start": 2532,
                                                  "end": 2551,
                                                  "loc": {
                                                    "start": {
                                                      "line": 49,
                                                      "column": 35
                                                    },
                                                    "end": {
                                                      "line": 49,
                                                      "column": 54
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "MemberExpression",
                                                    "start": 2536,
                                                    "end": 2549,
                                                    "loc": {
                                                      "start": {
                                                        "line": 49,
                                                        "column": 39
                                                      },
                                                      "end": {
                                                        "line": 49,
                                                        "column": 52
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 2536,
                                                      "end": 2541,
                                                      "loc": {
                                                        "start": {
                                                          "line": 49,
                                                          "column": 39
                                                        },
                                                        "end": {
                                                          "line": 49,
                                                          "column": 44
                                                        }
                                                      },
                                                      "name": "THREE"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2542,
                                                      "end": 2549,
                                                      "loc": {
                                                        "start": {
                                                          "line": 49,
                                                          "column": 45
                                                        },
                                                        "end": {
                                                          "line": 49,
                                                          "column": 52
                                                        }
                                                      },
                                                      "name": "Matrix4"
                                                    },
                                                    "computed": false
                                                  },
                                                  "arguments": []
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2552,
                                                  "end": 2562,
                                                  "loc": {
                                                    "start": {
                                                      "line": 49,
                                                      "column": 55
                                                    },
                                                    "end": {
                                                      "line": 49,
                                                      "column": 65
                                                    }
                                                  },
                                                  "name": "getInverse"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "MemberExpression",
                                                  "start": 2563,
                                                  "end": 2581,
                                                  "loc": {
                                                    "start": {
                                                      "line": 49,
                                                      "column": 66
                                                    },
                                                    "end": {
                                                      "line": 49,
                                                      "column": 84
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 2563,
                                                    "end": 2569,
                                                    "loc": {
                                                      "start": {
                                                        "line": 49,
                                                        "column": 66
                                                      },
                                                      "end": {
                                                        "line": 49,
                                                        "column": 72
                                                      }
                                                    },
                                                    "name": "sketch"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2570,
                                                    "end": 2581,
                                                    "loc": {
                                                      "start": {
                                                        "line": 49,
                                                        "column": 73
                                                      },
                                                      "end": {
                                                        "line": 49,
                                                        "column": 84
                                                      }
                                                    },
                                                    "name": "matrixWorld"
                                                  },
                                                  "computed": false
                                                }
                                              ]
                                            },
                                            "leadingComments": null
                                          }
                                        ],
                                        "kind": "let",
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "transform line from world to sketch coords",
                                            "start": 2451,
                                            "end": 2495,
                                            "loc": {
                                              "start": {
                                                "line": 48,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 48,
                                                "column": 60
                                              }
                                            },
                                            "range": [
                                              2451,
                                              2495
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 2601,
                                        "end": 2634,
                                        "loc": {
                                          "start": {
                                            "line": 50,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 50,
                                            "column": 49
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 2601,
                                          "end": 2633,
                                          "loc": {
                                            "start": {
                                              "line": 50,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 50,
                                              "column": 48
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 2601,
                                            "end": 2619,
                                            "loc": {
                                              "start": {
                                                "line": 50,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 50,
                                                "column": 34
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 2601,
                                              "end": 2606,
                                              "loc": {
                                                "start": {
                                                  "line": 50,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 50,
                                                  "column": 21
                                                }
                                              },
                                              "name": "line3"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2607,
                                              "end": 2619,
                                              "loc": {
                                                "start": {
                                                  "line": 50,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 50,
                                                  "column": 34
                                                }
                                              },
                                              "name": "applyMatrix4"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 2620,
                                              "end": 2632,
                                              "loc": {
                                                "start": {
                                                  "line": 50,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 50,
                                                  "column": 47
                                                }
                                              },
                                              "name": "worldToLocal"
                                            }
                                          ]
                                        },
                                        "trailingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "calculate intersection of line with z = 0 plane",
                                            "start": 2652,
                                            "end": 2701,
                                            "loc": {
                                              "start": {
                                                "line": 51,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 51,
                                                "column": 65
                                              }
                                            },
                                            "range": [
                                              2652,
                                              2701
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 2719,
                                        "end": 2783,
                                        "loc": {
                                          "start": {
                                            "line": 52,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 52,
                                            "column": 80
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 2723,
                                            "end": 2782,
                                            "loc": {
                                              "start": {
                                                "line": 52,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 52,
                                                "column": 79
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 2723,
                                              "end": 2728,
                                              "loc": {
                                                "start": {
                                                  "line": 52,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 52,
                                                  "column": 25
                                                }
                                              },
                                              "name": "param",
                                              "leadingComments": null
                                            },
                                            "init": {
                                              "type": "BinaryExpression",
                                              "start": 2731,
                                              "end": 2782,
                                              "loc": {
                                                "start": {
                                                  "line": 52,
                                                  "column": 28
                                                },
                                                "end": {
                                                  "line": 52,
                                                  "column": 79
                                                }
                                              },
                                              "left": {
                                                "type": "BinaryExpression",
                                                "start": 2732,
                                                "end": 2749,
                                                "loc": {
                                                  "start": {
                                                    "line": 52,
                                                    "column": 29
                                                  },
                                                  "end": {
                                                    "line": 52,
                                                    "column": 46
                                                  }
                                                },
                                                "left": {
                                                  "type": "Literal",
                                                  "start": 2732,
                                                  "end": 2733,
                                                  "loc": {
                                                    "start": {
                                                      "line": 52,
                                                      "column": 29
                                                    },
                                                    "end": {
                                                      "line": 52,
                                                      "column": 30
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "operator": "-",
                                                "right": {
                                                  "type": "MemberExpression",
                                                  "start": 2736,
                                                  "end": 2749,
                                                  "loc": {
                                                    "start": {
                                                      "line": 52,
                                                      "column": 33
                                                    },
                                                    "end": {
                                                      "line": 52,
                                                      "column": 46
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 2736,
                                                    "end": 2747,
                                                    "loc": {
                                                      "start": {
                                                        "line": 52,
                                                        "column": 33
                                                      },
                                                      "end": {
                                                        "line": 52,
                                                        "column": 44
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 2736,
                                                      "end": 2741,
                                                      "loc": {
                                                        "start": {
                                                          "line": 52,
                                                          "column": 33
                                                        },
                                                        "end": {
                                                          "line": 52,
                                                          "column": 38
                                                        }
                                                      },
                                                      "name": "line3"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2742,
                                                      "end": 2747,
                                                      "loc": {
                                                        "start": {
                                                          "line": 52,
                                                          "column": 39
                                                        },
                                                        "end": {
                                                          "line": 52,
                                                          "column": 44
                                                        }
                                                      },
                                                      "name": "start"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2748,
                                                    "end": 2749,
                                                    "loc": {
                                                      "start": {
                                                        "line": 52,
                                                        "column": 45
                                                      },
                                                      "end": {
                                                        "line": 52,
                                                        "column": 46
                                                      }
                                                    },
                                                    "name": "z"
                                                  },
                                                  "computed": false
                                                },
                                                "parenthesizedExpression": true
                                              },
                                              "operator": "/",
                                              "right": {
                                                "type": "BinaryExpression",
                                                "start": 2754,
                                                "end": 2781,
                                                "loc": {
                                                  "start": {
                                                    "line": 52,
                                                    "column": 51
                                                  },
                                                  "end": {
                                                    "line": 52,
                                                    "column": 78
                                                  }
                                                },
                                                "left": {
                                                  "type": "MemberExpression",
                                                  "start": 2754,
                                                  "end": 2765,
                                                  "loc": {
                                                    "start": {
                                                      "line": 52,
                                                      "column": 51
                                                    },
                                                    "end": {
                                                      "line": 52,
                                                      "column": 62
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 2754,
                                                    "end": 2763,
                                                    "loc": {
                                                      "start": {
                                                        "line": 52,
                                                        "column": 51
                                                      },
                                                      "end": {
                                                        "line": 52,
                                                        "column": 60
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 2754,
                                                      "end": 2759,
                                                      "loc": {
                                                        "start": {
                                                          "line": 52,
                                                          "column": 51
                                                        },
                                                        "end": {
                                                          "line": 52,
                                                          "column": 56
                                                        }
                                                      },
                                                      "name": "line3"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2760,
                                                      "end": 2763,
                                                      "loc": {
                                                        "start": {
                                                          "line": 52,
                                                          "column": 57
                                                        },
                                                        "end": {
                                                          "line": 52,
                                                          "column": 60
                                                        }
                                                      },
                                                      "name": "end"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2764,
                                                    "end": 2765,
                                                    "loc": {
                                                      "start": {
                                                        "line": 52,
                                                        "column": 61
                                                      },
                                                      "end": {
                                                        "line": 52,
                                                        "column": 62
                                                      }
                                                    },
                                                    "name": "z"
                                                  },
                                                  "computed": false
                                                },
                                                "operator": "-",
                                                "right": {
                                                  "type": "MemberExpression",
                                                  "start": 2768,
                                                  "end": 2781,
                                                  "loc": {
                                                    "start": {
                                                      "line": 52,
                                                      "column": 65
                                                    },
                                                    "end": {
                                                      "line": 52,
                                                      "column": 78
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 2768,
                                                    "end": 2779,
                                                    "loc": {
                                                      "start": {
                                                        "line": 52,
                                                        "column": 65
                                                      },
                                                      "end": {
                                                        "line": 52,
                                                        "column": 76
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 2768,
                                                      "end": 2773,
                                                      "loc": {
                                                        "start": {
                                                          "line": 52,
                                                          "column": 65
                                                        },
                                                        "end": {
                                                          "line": 52,
                                                          "column": 70
                                                        }
                                                      },
                                                      "name": "line3"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2774,
                                                      "end": 2779,
                                                      "loc": {
                                                        "start": {
                                                          "line": 52,
                                                          "column": 71
                                                        },
                                                        "end": {
                                                          "line": 52,
                                                          "column": 76
                                                        }
                                                      },
                                                      "name": "start"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2780,
                                                    "end": 2781,
                                                    "loc": {
                                                      "start": {
                                                        "line": 52,
                                                        "column": 77
                                                      },
                                                      "end": {
                                                        "line": 52,
                                                        "column": 78
                                                      }
                                                    },
                                                    "name": "z"
                                                  },
                                                  "computed": false
                                                },
                                                "parenthesizedExpression": true
                                              }
                                            },
                                            "leadingComments": null
                                          }
                                        ],
                                        "kind": "var",
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "calculate intersection of line with z = 0 plane",
                                            "start": 2652,
                                            "end": 2701,
                                            "loc": {
                                              "start": {
                                                "line": 51,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 51,
                                                "column": 65
                                              }
                                            },
                                            "range": [
                                              2652,
                                              2701
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 2801,
                                        "end": 2835,
                                        "loc": {
                                          "start": {
                                            "line": 53,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 53,
                                            "column": 50
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 2805,
                                            "end": 2834,
                                            "loc": {
                                              "start": {
                                                "line": 53,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 53,
                                                "column": 49
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 2805,
                                              "end": 2816,
                                              "loc": {
                                                "start": {
                                                  "line": 53,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 53,
                                                  "column": 31
                                                }
                                              },
                                              "name": "sketchPoint"
                                            },
                                            "init": {
                                              "type": "CallExpression",
                                              "start": 2819,
                                              "end": 2834,
                                              "loc": {
                                                "start": {
                                                  "line": 53,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 53,
                                                  "column": 49
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 2819,
                                                "end": 2827,
                                                "loc": {
                                                  "start": {
                                                    "line": 53,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 53,
                                                    "column": 42
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 2819,
                                                  "end": 2824,
                                                  "loc": {
                                                    "start": {
                                                      "line": 53,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 53,
                                                      "column": 39
                                                    }
                                                  },
                                                  "name": "line3"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2825,
                                                  "end": 2827,
                                                  "loc": {
                                                    "start": {
                                                      "line": 53,
                                                      "column": 40
                                                    },
                                                    "end": {
                                                      "line": 53,
                                                      "column": 42
                                                    }
                                                  },
                                                  "name": "at"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 2828,
                                                  "end": 2833,
                                                  "loc": {
                                                    "start": {
                                                      "line": 53,
                                                      "column": 43
                                                    },
                                                    "end": {
                                                      "line": 53,
                                                      "column": 48
                                                    }
                                                  },
                                                  "name": "param"
                                                }
                                              ]
                                            }
                                          }
                                        ],
                                        "kind": "let"
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 2853,
                                        "end": 2871,
                                        "loc": {
                                          "start": {
                                            "line": 54,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 54,
                                            "column": 34
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 2853,
                                          "end": 2870,
                                          "loc": {
                                            "start": {
                                              "line": 54,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 54,
                                              "column": 33
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 2853,
                                            "end": 2866,
                                            "loc": {
                                              "start": {
                                                "line": 54,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 54,
                                                "column": 29
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 2853,
                                              "end": 2864,
                                              "loc": {
                                                "start": {
                                                  "line": 54,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 54,
                                                  "column": 27
                                                }
                                              },
                                              "name": "sketchPoint"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2865,
                                              "end": 2866,
                                              "loc": {
                                                "start": {
                                                  "line": 54,
                                                  "column": 28
                                                },
                                                "end": {
                                                  "line": 54,
                                                  "column": 29
                                                }
                                              },
                                              "name": "z"
                                            },
                                            "computed": false
                                          },
                                          "right": {
                                            "type": "Literal",
                                            "start": 2869,
                                            "end": 2870,
                                            "loc": {
                                              "start": {
                                                "line": 54,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 54,
                                                "column": 33
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0"
                                          }
                                        },
                                        "trailingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "ensure it is exactly zero",
                                            "start": 2873,
                                            "end": 2900,
                                            "loc": {
                                              "start": {
                                                "line": 54,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 54,
                                                "column": 63
                                              }
                                            },
                                            "range": [
                                              2873,
                                              2900
                                            ]
                                          },
                                          {
                                            "type": "CommentLine",
                                            "value": "if changed, call mouse move handler",
                                            "start": 2918,
                                            "end": 2955,
                                            "loc": {
                                              "start": {
                                                "line": 55,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 55,
                                                "column": 53
                                              }
                                            },
                                            "range": [
                                              2918,
                                              2955
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "IfStatement",
                                        "start": 2973,
                                        "end": 3224,
                                        "loc": {
                                          "start": {
                                            "line": 56,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 60,
                                            "column": 17
                                          }
                                        },
                                        "test": {
                                          "type": "UnaryExpression",
                                          "start": 2977,
                                          "end": 3028,
                                          "loc": {
                                            "start": {
                                              "line": 56,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 56,
                                              "column": 71
                                            }
                                          },
                                          "operator": "!",
                                          "prefix": true,
                                          "argument": {
                                            "type": "CallExpression",
                                            "start": 2978,
                                            "end": 3028,
                                            "loc": {
                                              "start": {
                                                "line": 56,
                                                "column": 21
                                              },
                                              "end": {
                                                "line": 56,
                                                "column": 71
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 2978,
                                              "end": 2996,
                                              "loc": {
                                                "start": {
                                                  "line": 56,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 56,
                                                  "column": 39
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 2978,
                                                "end": 2989,
                                                "loc": {
                                                  "start": {
                                                    "line": 56,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 56,
                                                    "column": 32
                                                  }
                                                },
                                                "name": "sketchPoint",
                                                "leadingComments": null
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 2990,
                                                "end": 2996,
                                                "loc": {
                                                  "start": {
                                                    "line": 56,
                                                    "column": 33
                                                  },
                                                  "end": {
                                                    "line": 56,
                                                    "column": 39
                                                  }
                                                },
                                                "name": "equals"
                                              },
                                              "computed": false,
                                              "leadingComments": null
                                            },
                                            "arguments": [
                                              {
                                                "type": "MemberExpression",
                                                "start": 2997,
                                                "end": 3027,
                                                "loc": {
                                                  "start": {
                                                    "line": 56,
                                                    "column": 40
                                                  },
                                                  "end": {
                                                    "line": 56,
                                                    "column": 70
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 2997,
                                                  "end": 3010,
                                                  "loc": {
                                                    "start": {
                                                      "line": 56,
                                                      "column": 40
                                                    },
                                                    "end": {
                                                      "line": 56,
                                                      "column": 53
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 2997,
                                                    "end": 3005,
                                                    "loc": {
                                                      "start": {
                                                        "line": 56,
                                                        "column": 40
                                                      },
                                                      "end": {
                                                        "line": 56,
                                                        "column": 48
                                                      }
                                                    },
                                                    "name": "sketcher"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 3006,
                                                    "end": 3010,
                                                    "loc": {
                                                      "start": {
                                                        "line": 56,
                                                        "column": 49
                                                      },
                                                      "end": {
                                                        "line": 56,
                                                        "column": 53
                                                      }
                                                    },
                                                    "name": "data"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 3011,
                                                  "end": 3027,
                                                  "loc": {
                                                    "start": {
                                                      "line": 56,
                                                      "column": 54
                                                    },
                                                    "end": {
                                                      "line": 56,
                                                      "column": 70
                                                    }
                                                  },
                                                  "name": "interactionPoint"
                                                },
                                                "computed": false
                                              }
                                            ],
                                            "leadingComments": null
                                          },
                                          "leadingComments": null
                                        },
                                        "consequent": {
                                          "type": "BlockStatement",
                                          "start": 3030,
                                          "end": 3224,
                                          "loc": {
                                            "start": {
                                              "line": 56,
                                              "column": 73
                                            },
                                            "end": {
                                              "line": 60,
                                              "column": 17
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 3107,
                                              "end": 3156,
                                              "loc": {
                                                "start": {
                                                  "line": 58,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 58,
                                                  "column": 69
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 3107,
                                                "end": 3155,
                                                "loc": {
                                                  "start": {
                                                    "line": 58,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 58,
                                                    "column": 68
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 3107,
                                                  "end": 3142,
                                                  "loc": {
                                                    "start": {
                                                      "line": 58,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 58,
                                                      "column": 55
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 3107,
                                                    "end": 3137,
                                                    "loc": {
                                                      "start": {
                                                        "line": 58,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 58,
                                                        "column": 50
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "MemberExpression",
                                                      "start": 3107,
                                                      "end": 3120,
                                                      "loc": {
                                                        "start": {
                                                          "line": 58,
                                                          "column": 20
                                                        },
                                                        "end": {
                                                          "line": 58,
                                                          "column": 33
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 3107,
                                                        "end": 3115,
                                                        "loc": {
                                                          "start": {
                                                            "line": 58,
                                                            "column": 20
                                                          },
                                                          "end": {
                                                            "line": 58,
                                                            "column": 28
                                                          }
                                                        },
                                                        "name": "sketcher",
                                                        "leadingComments": null
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 3116,
                                                        "end": 3120,
                                                        "loc": {
                                                          "start": {
                                                            "line": 58,
                                                            "column": 29
                                                          },
                                                          "end": {
                                                            "line": 58,
                                                            "column": 33
                                                          }
                                                        },
                                                        "name": "data"
                                                      },
                                                      "computed": false,
                                                      "leadingComments": null
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 3121,
                                                      "end": 3137,
                                                      "loc": {
                                                        "start": {
                                                          "line": 58,
                                                          "column": 34
                                                        },
                                                        "end": {
                                                          "line": 58,
                                                          "column": 50
                                                        }
                                                      },
                                                      "name": "interactionPoint"
                                                    },
                                                    "computed": false,
                                                    "leadingComments": null
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 3138,
                                                    "end": 3142,
                                                    "loc": {
                                                      "start": {
                                                        "line": 58,
                                                        "column": 51
                                                      },
                                                      "end": {
                                                        "line": 58,
                                                        "column": 55
                                                      }
                                                    },
                                                    "name": "copy"
                                                  },
                                                  "computed": false,
                                                  "leadingComments": null
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 3143,
                                                    "end": 3154,
                                                    "loc": {
                                                      "start": {
                                                        "line": 58,
                                                        "column": 56
                                                      },
                                                      "end": {
                                                        "line": 58,
                                                        "column": 67
                                                      }
                                                    },
                                                    "name": "sketchPoint"
                                                  }
                                                ],
                                                "leadingComments": null
                                              },
                                              "leadingComments": [
                                                {
                                                  "type": "CommentLine",
                                                  "value": "TODO: await mouseMove handler?",
                                                  "start": 3053,
                                                  "end": 3085,
                                                  "loc": {
                                                    "start": {
                                                      "line": 57,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 57,
                                                      "column": 52
                                                    }
                                                  },
                                                  "range": [
                                                    3053,
                                                    3085
                                                  ]
                                                }
                                              ]
                                            },
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 3178,
                                              "end": 3205,
                                              "loc": {
                                                "start": {
                                                  "line": 59,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 59,
                                                  "column": 47
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 3178,
                                                "end": 3204,
                                                "loc": {
                                                  "start": {
                                                    "line": 59,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 59,
                                                    "column": 46
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 3178,
                                                  "end": 3202,
                                                  "loc": {
                                                    "start": {
                                                      "line": 59,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 59,
                                                      "column": 44
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 3178,
                                                    "end": 3186,
                                                    "loc": {
                                                      "start": {
                                                        "line": 59,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 59,
                                                        "column": 28
                                                      }
                                                    },
                                                    "name": "sketcher"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 3187,
                                                    "end": 3202,
                                                    "loc": {
                                                      "start": {
                                                        "line": 59,
                                                        "column": 29
                                                      },
                                                      "end": {
                                                        "line": 59,
                                                        "column": 44
                                                      }
                                                    },
                                                    "name": "setActionCursor"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": []
                                              }
                                            }
                                          ]
                                        },
                                        "alternate": null,
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "ensure it is exactly zero",
                                            "start": 2873,
                                            "end": 2900,
                                            "loc": {
                                              "start": {
                                                "line": 54,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 54,
                                                "column": 63
                                              }
                                            },
                                            "range": [
                                              2873,
                                              2900
                                            ]
                                          },
                                          {
                                            "type": "CommentLine",
                                            "value": "if changed, call mouse move handler",
                                            "start": 2918,
                                            "end": 2955,
                                            "loc": {
                                              "start": {
                                                "line": 55,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 55,
                                                "column": 53
                                              }
                                            },
                                            "range": [
                                              2918,
                                              2955
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 3242,
                                        "end": 3261,
                                        "loc": {
                                          "start": {
                                            "line": 61,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 61,
                                            "column": 35
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 3242,
                                          "end": 3260,
                                          "loc": {
                                            "start": {
                                              "line": 61,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 61,
                                              "column": 34
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 3242,
                                            "end": 3258,
                                            "loc": {
                                              "start": {
                                                "line": 61,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 61,
                                                "column": 32
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 3242,
                                              "end": 3250,
                                              "loc": {
                                                "start": {
                                                  "line": 61,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 61,
                                                  "column": 24
                                                }
                                              },
                                              "name": "sketcher"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 3251,
                                              "end": 3258,
                                              "loc": {
                                                "start": {
                                                  "line": 61,
                                                  "column": 25
                                                },
                                                "end": {
                                                  "line": 61,
                                                  "column": 32
                                                }
                                              },
                                              "name": "refresh"
                                            },
                                            "computed": false
                                          },
                                          "arguments": []
                                        }
                                      }
                                    ]
                                  }
                                }
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3302,
                      "end": 3409,
                      "loc": {
                        "start": {
                          "line": 65,
                          "column": 8
                        },
                        "end": {
                          "line": 65,
                          "column": 115
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3302,
                        "end": 3408,
                        "loc": {
                          "start": {
                            "line": 65,
                            "column": 8
                          },
                          "end": {
                            "line": 65,
                            "column": 114
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3302,
                          "end": 3313,
                          "loc": {
                            "start": {
                              "line": 65,
                              "column": 8
                            },
                            "end": {
                              "line": 65,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3302,
                            "end": 3306,
                            "loc": {
                              "start": {
                                "line": 65,
                                "column": 8
                              },
                              "end": {
                                "line": 65,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3307,
                            "end": 3313,
                            "loc": {
                              "start": {
                                "line": 65,
                                "column": 13
                              },
                              "end": {
                                "line": 65,
                                "column": 19
                              }
                            },
                            "name": "__grid"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 3316,
                          "end": 3408,
                          "loc": {
                            "start": {
                              "line": 65,
                              "column": 22
                            },
                            "end": {
                              "line": 65,
                              "column": 114
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 3320,
                            "end": 3338,
                            "loc": {
                              "start": {
                                "line": 65,
                                "column": 26
                              },
                              "end": {
                                "line": 65,
                                "column": 44
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 3320,
                              "end": 3325,
                              "loc": {
                                "start": {
                                  "line": 65,
                                  "column": 26
                                },
                                "end": {
                                  "line": 65,
                                  "column": 31
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3326,
                              "end": 3338,
                              "loc": {
                                "start": {
                                  "line": 65,
                                  "column": 32
                                },
                                "end": {
                                  "line": 65,
                                  "column": 44
                                }
                              },
                              "name": "LineSegments"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "NewExpression",
                              "start": 3339,
                              "end": 3359,
                              "loc": {
                                "start": {
                                  "line": 65,
                                  "column": 45
                                },
                                "end": {
                                  "line": 65,
                                  "column": 65
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3343,
                                "end": 3357,
                                "loc": {
                                  "start": {
                                    "line": 65,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 65,
                                    "column": 63
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3343,
                                  "end": 3348,
                                  "loc": {
                                    "start": {
                                      "line": 65,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 65,
                                      "column": 54
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3349,
                                  "end": 3357,
                                  "loc": {
                                    "start": {
                                      "line": 65,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 65,
                                      "column": 63
                                    }
                                  },
                                  "name": "Geometry"
                                },
                                "computed": false
                              },
                              "arguments": []
                            },
                            {
                              "type": "NewExpression",
                              "start": 3361,
                              "end": 3407,
                              "loc": {
                                "start": {
                                  "line": 65,
                                  "column": 67
                                },
                                "end": {
                                  "line": 65,
                                  "column": 113
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3365,
                                "end": 3388,
                                "loc": {
                                  "start": {
                                    "line": 65,
                                    "column": 71
                                  },
                                  "end": {
                                    "line": 65,
                                    "column": 94
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3365,
                                  "end": 3370,
                                  "loc": {
                                    "start": {
                                      "line": 65,
                                      "column": 71
                                    },
                                    "end": {
                                      "line": 65,
                                      "column": 76
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3371,
                                  "end": 3388,
                                  "loc": {
                                    "start": {
                                      "line": 65,
                                      "column": 77
                                    },
                                    "end": {
                                      "line": 65,
                                      "column": 94
                                    }
                                  },
                                  "name": "LineBasicMaterial"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ObjectExpression",
                                  "start": 3389,
                                  "end": 3406,
                                  "loc": {
                                    "start": {
                                      "line": 65,
                                      "column": 95
                                    },
                                    "end": {
                                      "line": 65,
                                      "column": 112
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "Property",
                                      "start": 3390,
                                      "end": 3405,
                                      "loc": {
                                        "start": {
                                          "line": 65,
                                          "column": 96
                                        },
                                        "end": {
                                          "line": 65,
                                          "column": 111
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 3390,
                                        "end": 3395,
                                        "loc": {
                                          "start": {
                                            "line": 65,
                                            "column": 96
                                          },
                                          "end": {
                                            "line": 65,
                                            "column": 101
                                          }
                                        },
                                        "name": "color"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 3397,
                                        "end": 3405,
                                        "loc": {
                                          "start": {
                                            "line": 65,
                                            "column": 103
                                          },
                                          "end": {
                                            "line": 65,
                                            "column": 111
                                          }
                                        },
                                        "value": 5263440,
                                        "rawValue": 5263440,
                                        "raw": "0x505050"
                                      },
                                      "kind": "init"
                                    }
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3419,
                      "end": 3526,
                      "loc": {
                        "start": {
                          "line": 66,
                          "column": 8
                        },
                        "end": {
                          "line": 66,
                          "column": 115
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3419,
                        "end": 3525,
                        "loc": {
                          "start": {
                            "line": 66,
                            "column": 8
                          },
                          "end": {
                            "line": 66,
                            "column": 114
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3419,
                          "end": 3430,
                          "loc": {
                            "start": {
                              "line": 66,
                              "column": 8
                            },
                            "end": {
                              "line": 66,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3419,
                            "end": 3423,
                            "loc": {
                              "start": {
                                "line": 66,
                                "column": 8
                              },
                              "end": {
                                "line": 66,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3424,
                            "end": 3430,
                            "loc": {
                              "start": {
                                "line": 66,
                                "column": 13
                              },
                              "end": {
                                "line": 66,
                                "column": 19
                              }
                            },
                            "name": "__axis"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 3433,
                          "end": 3525,
                          "loc": {
                            "start": {
                              "line": 66,
                              "column": 22
                            },
                            "end": {
                              "line": 66,
                              "column": 114
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 3437,
                            "end": 3455,
                            "loc": {
                              "start": {
                                "line": 66,
                                "column": 26
                              },
                              "end": {
                                "line": 66,
                                "column": 44
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 3437,
                              "end": 3442,
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 26
                                },
                                "end": {
                                  "line": 66,
                                  "column": 31
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3443,
                              "end": 3455,
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 32
                                },
                                "end": {
                                  "line": 66,
                                  "column": 44
                                }
                              },
                              "name": "LineSegments"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "NewExpression",
                              "start": 3456,
                              "end": 3476,
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 45
                                },
                                "end": {
                                  "line": 66,
                                  "column": 65
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3460,
                                "end": 3474,
                                "loc": {
                                  "start": {
                                    "line": 66,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 66,
                                    "column": 63
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3460,
                                  "end": 3465,
                                  "loc": {
                                    "start": {
                                      "line": 66,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 66,
                                      "column": 54
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3466,
                                  "end": 3474,
                                  "loc": {
                                    "start": {
                                      "line": 66,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 66,
                                      "column": 63
                                    }
                                  },
                                  "name": "Geometry"
                                },
                                "computed": false
                              },
                              "arguments": []
                            },
                            {
                              "type": "NewExpression",
                              "start": 3478,
                              "end": 3524,
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 67
                                },
                                "end": {
                                  "line": 66,
                                  "column": 113
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3482,
                                "end": 3505,
                                "loc": {
                                  "start": {
                                    "line": 66,
                                    "column": 71
                                  },
                                  "end": {
                                    "line": 66,
                                    "column": 94
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3482,
                                  "end": 3487,
                                  "loc": {
                                    "start": {
                                      "line": 66,
                                      "column": 71
                                    },
                                    "end": {
                                      "line": 66,
                                      "column": 76
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3488,
                                  "end": 3505,
                                  "loc": {
                                    "start": {
                                      "line": 66,
                                      "column": 77
                                    },
                                    "end": {
                                      "line": 66,
                                      "column": 94
                                    }
                                  },
                                  "name": "LineBasicMaterial"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ObjectExpression",
                                  "start": 3506,
                                  "end": 3523,
                                  "loc": {
                                    "start": {
                                      "line": 66,
                                      "column": 95
                                    },
                                    "end": {
                                      "line": 66,
                                      "column": 112
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "Property",
                                      "start": 3507,
                                      "end": 3522,
                                      "loc": {
                                        "start": {
                                          "line": 66,
                                          "column": 96
                                        },
                                        "end": {
                                          "line": 66,
                                          "column": 111
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 3507,
                                        "end": 3512,
                                        "loc": {
                                          "start": {
                                            "line": 66,
                                            "column": 96
                                          },
                                          "end": {
                                            "line": 66,
                                            "column": 101
                                          }
                                        },
                                        "name": "color"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 3514,
                                        "end": 3522,
                                        "loc": {
                                          "start": {
                                            "line": 66,
                                            "column": 103
                                          },
                                          "end": {
                                            "line": 66,
                                            "column": 111
                                          }
                                        },
                                        "value": 16711680,
                                        "rawValue": 16711680,
                                        "raw": "0xff0000"
                                      },
                                      "kind": "init"
                                    }
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "lines are sometimes incorrectly frustum culled, so let webgl handle this",
                          "start": 3536,
                          "end": 3610,
                          "loc": {
                            "start": {
                              "line": 67,
                              "column": 8
                            },
                            "end": {
                              "line": 67,
                              "column": 82
                            }
                          },
                          "range": [
                            3536,
                            3610
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3620,
                      "end": 3654,
                      "loc": {
                        "start": {
                          "line": 68,
                          "column": 8
                        },
                        "end": {
                          "line": 68,
                          "column": 42
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3620,
                        "end": 3653,
                        "loc": {
                          "start": {
                            "line": 68,
                            "column": 8
                          },
                          "end": {
                            "line": 68,
                            "column": 41
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3620,
                          "end": 3645,
                          "loc": {
                            "start": {
                              "line": 68,
                              "column": 8
                            },
                            "end": {
                              "line": 68,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 3620,
                            "end": 3631,
                            "loc": {
                              "start": {
                                "line": 68,
                                "column": 8
                              },
                              "end": {
                                "line": 68,
                                "column": 19
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3620,
                              "end": 3624,
                              "loc": {
                                "start": {
                                  "line": 68,
                                  "column": 8
                                },
                                "end": {
                                  "line": 68,
                                  "column": 12
                                }
                              },
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3625,
                              "end": 3631,
                              "loc": {
                                "start": {
                                  "line": 68,
                                  "column": 13
                                },
                                "end": {
                                  "line": 68,
                                  "column": 19
                                }
                              },
                              "name": "__grid"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3632,
                            "end": 3645,
                            "loc": {
                              "start": {
                                "line": 68,
                                "column": 20
                              },
                              "end": {
                                "line": 68,
                                "column": 33
                              }
                            },
                            "name": "frustumCulled"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "Literal",
                          "start": 3648,
                          "end": 3653,
                          "loc": {
                            "start": {
                              "line": 68,
                              "column": 36
                            },
                            "end": {
                              "line": 68,
                              "column": 41
                            }
                          },
                          "value": false,
                          "rawValue": false,
                          "raw": "false"
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "lines are sometimes incorrectly frustum culled, so let webgl handle this",
                          "start": 3536,
                          "end": 3610,
                          "loc": {
                            "start": {
                              "line": 67,
                              "column": 8
                            },
                            "end": {
                              "line": 67,
                              "column": 82
                            }
                          },
                          "range": [
                            3536,
                            3610
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3664,
                      "end": 3698,
                      "loc": {
                        "start": {
                          "line": 69,
                          "column": 8
                        },
                        "end": {
                          "line": 69,
                          "column": 42
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3664,
                        "end": 3697,
                        "loc": {
                          "start": {
                            "line": 69,
                            "column": 8
                          },
                          "end": {
                            "line": 69,
                            "column": 41
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3664,
                          "end": 3689,
                          "loc": {
                            "start": {
                              "line": 69,
                              "column": 8
                            },
                            "end": {
                              "line": 69,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 3664,
                            "end": 3675,
                            "loc": {
                              "start": {
                                "line": 69,
                                "column": 8
                              },
                              "end": {
                                "line": 69,
                                "column": 19
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3664,
                              "end": 3668,
                              "loc": {
                                "start": {
                                  "line": 69,
                                  "column": 8
                                },
                                "end": {
                                  "line": 69,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3669,
                              "end": 3675,
                              "loc": {
                                "start": {
                                  "line": 69,
                                  "column": 13
                                },
                                "end": {
                                  "line": 69,
                                  "column": 19
                                }
                              },
                              "name": "__axis"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3676,
                            "end": 3689,
                            "loc": {
                              "start": {
                                "line": 69,
                                "column": 20
                              },
                              "end": {
                                "line": 69,
                                "column": 33
                              }
                            },
                            "name": "frustumCulled"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 3692,
                          "end": 3697,
                          "loc": {
                            "start": {
                              "line": 69,
                              "column": 36
                            },
                            "end": {
                              "line": 69,
                              "column": 41
                            }
                          },
                          "value": false,
                          "rawValue": false,
                          "raw": "false"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3710,
                      "end": 3751,
                      "loc": {
                        "start": {
                          "line": 71,
                          "column": 8
                        },
                        "end": {
                          "line": 71,
                          "column": 49
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3710,
                        "end": 3750,
                        "loc": {
                          "start": {
                            "line": 71,
                            "column": 8
                          },
                          "end": {
                            "line": 71,
                            "column": 48
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3710,
                          "end": 3727,
                          "loc": {
                            "start": {
                              "line": 71,
                              "column": 8
                            },
                            "end": {
                              "line": 71,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3710,
                            "end": 3714,
                            "loc": {
                              "start": {
                                "line": 71,
                                "column": 8
                              },
                              "end": {
                                "line": 71,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3715,
                            "end": 3727,
                            "loc": {
                              "start": {
                                "line": 71,
                                "column": 13
                              },
                              "end": {
                                "line": 71,
                                "column": 25
                              }
                            },
                            "name": "__dimensions"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 3730,
                          "end": 3750,
                          "loc": {
                            "start": {
                              "line": 71,
                              "column": 28
                            },
                            "end": {
                              "line": 71,
                              "column": 48
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 3734,
                            "end": 3748,
                            "loc": {
                              "start": {
                                "line": 71,
                                "column": 32
                              },
                              "end": {
                                "line": 71,
                                "column": 46
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 3734,
                              "end": 3739,
                              "loc": {
                                "start": {
                                  "line": 71,
                                  "column": 32
                                },
                                "end": {
                                  "line": 71,
                                  "column": 37
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3740,
                              "end": 3748,
                              "loc": {
                                "start": {
                                  "line": 71,
                                  "column": 38
                                },
                                "end": {
                                  "line": 71,
                                  "column": 46
                                }
                              },
                              "name": "Object3D"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "some default values",
                          "start": 3763,
                          "end": 3784,
                          "loc": {
                            "start": {
                              "line": 73,
                              "column": 8
                            },
                            "end": {
                              "line": 73,
                              "column": 29
                            }
                          },
                          "range": [
                            3763,
                            3784
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3794,
                      "end": 3813,
                      "loc": {
                        "start": {
                          "line": 74,
                          "column": 8
                        },
                        "end": {
                          "line": 74,
                          "column": 27
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3794,
                        "end": 3812,
                        "loc": {
                          "start": {
                            "line": 74,
                            "column": 8
                          },
                          "end": {
                            "line": 74,
                            "column": 26
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3794,
                          "end": 3808,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 8
                            },
                            "end": {
                              "line": 74,
                              "column": 22
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3794,
                            "end": 3798,
                            "loc": {
                              "start": {
                                "line": 74,
                                "column": 8
                              },
                              "end": {
                                "line": 74,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3799,
                            "end": 3808,
                            "loc": {
                              "start": {
                                "line": 74,
                                "column": 13
                              },
                              "end": {
                                "line": 74,
                                "column": 22
                              }
                            },
                            "name": "gridScale"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "Literal",
                          "start": 3811,
                          "end": 3812,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 25
                            },
                            "end": {
                              "line": 74,
                              "column": 26
                            }
                          },
                          "value": 4,
                          "rawValue": 4,
                          "raw": "4"
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "some default values",
                          "start": 3763,
                          "end": 3784,
                          "loc": {
                            "start": {
                              "line": 73,
                              "column": 8
                            },
                            "end": {
                              "line": 73,
                              "column": 29
                            }
                          },
                          "range": [
                            3763,
                            3784
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " empirical number for nice looking",
                          "start": 3814,
                          "end": 3850,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 28
                            },
                            "end": {
                              "line": 74,
                              "column": 64
                            }
                          },
                          "range": [
                            3814,
                            3850
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3860,
                      "end": 3881,
                      "loc": {
                        "start": {
                          "line": 75,
                          "column": 8
                        },
                        "end": {
                          "line": 75,
                          "column": 29
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3860,
                        "end": 3880,
                        "loc": {
                          "start": {
                            "line": 75,
                            "column": 8
                          },
                          "end": {
                            "line": 75,
                            "column": 28
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3860,
                          "end": 3873,
                          "loc": {
                            "start": {
                              "line": 75,
                              "column": 8
                            },
                            "end": {
                              "line": 75,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3860,
                            "end": 3864,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 8
                              },
                              "end": {
                                "line": 75,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3865,
                            "end": 3873,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 13
                              },
                              "end": {
                                "line": 75,
                                "column": 21
                              }
                            },
                            "name": "gridSize"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "Literal",
                          "start": 3876,
                          "end": 3880,
                          "loc": {
                            "start": {
                              "line": 75,
                              "column": 24
                            },
                            "end": {
                              "line": 75,
                              "column": 28
                            }
                          },
                          "value": 1000,
                          "rawValue": 1000,
                          "raw": "1000"
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " empirical number for nice looking",
                          "start": 3814,
                          "end": 3850,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 28
                            },
                            "end": {
                              "line": 74,
                              "column": 64
                            }
                          },
                          "range": [
                            3814,
                            3850
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3891,
                      "end": 3921,
                      "loc": {
                        "start": {
                          "line": 76,
                          "column": 8
                        },
                        "end": {
                          "line": 76,
                          "column": 38
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3891,
                        "end": 3920,
                        "loc": {
                          "start": {
                            "line": 76,
                            "column": 8
                          },
                          "end": {
                            "line": 76,
                            "column": 37
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3891,
                          "end": 3914,
                          "loc": {
                            "start": {
                              "line": 76,
                              "column": 8
                            },
                            "end": {
                              "line": 76,
                              "column": 31
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3891,
                            "end": 3895,
                            "loc": {
                              "start": {
                                "line": 76,
                                "column": 8
                              },
                              "end": {
                                "line": 76,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3896,
                            "end": 3914,
                            "loc": {
                              "start": {
                                "line": 76,
                                "column": 13
                              },
                              "end": {
                                "line": 76,
                                "column": 31
                              }
                            },
                            "name": "snappingSizeInGrid"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 3917,
                          "end": 3920,
                          "loc": {
                            "start": {
                              "line": 76,
                              "column": 34
                            },
                            "end": {
                              "line": 76,
                              "column": 37
                            }
                          },
                          "value": 0.1,
                          "rawValue": 0.1,
                          "raw": "0.1"
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " 10% of grid cell size",
                          "start": 3922,
                          "end": 3946,
                          "loc": {
                            "start": {
                              "line": 76,
                              "column": 39
                            },
                            "end": {
                              "line": 76,
                              "column": 63
                            }
                          },
                          "range": [
                            3922,
                            3946
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3956,
                      "end": 4000,
                      "loc": {
                        "start": {
                          "line": 77,
                          "column": 8
                        },
                        "end": {
                          "line": 77,
                          "column": 52
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3956,
                        "end": 3999,
                        "loc": {
                          "start": {
                            "line": 77,
                            "column": 8
                          },
                          "end": {
                            "line": 77,
                            "column": 51
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3956,
                          "end": 3976,
                          "loc": {
                            "start": {
                              "line": 77,
                              "column": 8
                            },
                            "end": {
                              "line": 77,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3956,
                            "end": 3960,
                            "loc": {
                              "start": {
                                "line": 77,
                                "column": 8
                              },
                              "end": {
                                "line": 77,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3961,
                            "end": 3976,
                            "loc": {
                              "start": {
                                "line": 77,
                                "column": 13
                              },
                              "end": {
                                "line": 77,
                                "column": 28
                              }
                            },
                            "name": "pointSizeInGrid"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "start": 3979,
                          "end": 3999,
                          "loc": {
                            "start": {
                              "line": 77,
                              "column": 31
                            },
                            "end": {
                              "line": 77,
                              "column": 51
                            }
                          },
                          "left": {
                            "type": "Literal",
                            "start": 3979,
                            "end": 3982,
                            "loc": {
                              "start": {
                                "line": 77,
                                "column": 31
                              },
                              "end": {
                                "line": 77,
                                "column": 34
                              }
                            },
                            "value": 0.1,
                            "rawValue": 0.1,
                            "raw": "0.1"
                          },
                          "operator": "/",
                          "right": {
                            "type": "MemberExpression",
                            "start": 3985,
                            "end": 3999,
                            "loc": {
                              "start": {
                                "line": 77,
                                "column": 37
                              },
                              "end": {
                                "line": 77,
                                "column": 51
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3985,
                              "end": 3989,
                              "loc": {
                                "start": {
                                  "line": 77,
                                  "column": 37
                                },
                                "end": {
                                  "line": 77,
                                  "column": 41
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3990,
                              "end": 3999,
                              "loc": {
                                "start": {
                                  "line": 77,
                                  "column": 42
                                },
                                "end": {
                                  "line": 77,
                                  "column": 51
                                }
                              },
                              "name": "gridScale"
                            },
                            "computed": false
                          }
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " 10% of grid cell size",
                          "start": 3922,
                          "end": 3946,
                          "loc": {
                            "start": {
                              "line": 76,
                              "column": 39
                            },
                            "end": {
                              "line": 76,
                              "column": 63
                            }
                          },
                          "range": [
                            3922,
                            3946
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " 10% of grid cell size",
                          "start": 4001,
                          "end": 4025,
                          "loc": {
                            "start": {
                              "line": 77,
                              "column": 53
                            },
                            "end": {
                              "line": 77,
                              "column": 77
                            }
                          },
                          "range": [
                            4001,
                            4025
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4035,
                      "end": 4064,
                      "loc": {
                        "start": {
                          "line": 78,
                          "column": 8
                        },
                        "end": {
                          "line": 78,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 4035,
                        "end": 4063,
                        "loc": {
                          "start": {
                            "line": 78,
                            "column": 8
                          },
                          "end": {
                            "line": 78,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 4035,
                          "end": 4057,
                          "loc": {
                            "start": {
                              "line": 78,
                              "column": 8
                            },
                            "end": {
                              "line": 78,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4035,
                            "end": 4039,
                            "loc": {
                              "start": {
                                "line": 78,
                                "column": 8
                              },
                              "end": {
                                "line": 78,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4040,
                            "end": 4057,
                            "loc": {
                              "start": {
                                "line": 78,
                                "column": 13
                              },
                              "end": {
                                "line": 78,
                                "column": 30
                              }
                            },
                            "name": "chosenItemOpacity"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "Literal",
                          "start": 4060,
                          "end": 4063,
                          "loc": {
                            "start": {
                              "line": 78,
                              "column": 33
                            },
                            "end": {
                              "line": 78,
                              "column": 36
                            }
                          },
                          "value": 0.5,
                          "rawValue": 0.5,
                          "raw": "0.5"
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " 10% of grid cell size",
                          "start": 4001,
                          "end": 4025,
                          "loc": {
                            "start": {
                              "line": 77,
                              "column": 53
                            },
                            "end": {
                              "line": 77,
                              "column": 77
                            }
                          },
                          "range": [
                            4001,
                            4025
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "initialize vertex buffers of grid+axis (must be before first render)",
                          "start": 4076,
                          "end": 4146,
                          "loc": {
                            "start": {
                              "line": 80,
                              "column": 8
                            },
                            "end": {
                              "line": 80,
                              "column": 78
                            }
                          },
                          "range": [
                            4076,
                            4146
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4156,
                      "end": 4174,
                      "loc": {
                        "start": {
                          "line": 81,
                          "column": 8
                        },
                        "end": {
                          "line": 81,
                          "column": 26
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 4156,
                        "end": 4173,
                        "loc": {
                          "start": {
                            "line": 81,
                            "column": 8
                          },
                          "end": {
                            "line": 81,
                            "column": 25
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 4156,
                          "end": 4171,
                          "loc": {
                            "start": {
                              "line": 81,
                              "column": 8
                            },
                            "end": {
                              "line": 81,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4156,
                            "end": 4160,
                            "loc": {
                              "start": {
                                "line": 81,
                                "column": 8
                              },
                              "end": {
                                "line": 81,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4161,
                            "end": 4171,
                            "loc": {
                              "start": {
                                "line": 81,
                                "column": 13
                              },
                              "end": {
                                "line": 81,
                                "column": 23
                              }
                            },
                            "name": "updateGrid"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "initialize vertex buffers of grid+axis (must be before first render)",
                          "start": 4076,
                          "end": 4146,
                          "loc": {
                            "start": {
                              "line": 80,
                              "column": 8
                            },
                            "end": {
                              "line": 80,
                              "column": 78
                            }
                          },
                          "range": [
                            4076,
                            4146
                          ]
                        }
                      ]
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 4189,
              "end": 4356,
              "loc": {
                "start": {
                  "line": 84,
                  "column": 4
                },
                "end": {
                  "line": 90,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 4196,
                "end": 4208,
                "loc": {
                  "start": {
                    "line": 84,
                    "column": 11
                  },
                  "end": {
                    "line": 84,
                    "column": 23
                  }
                },
                "name": "FindSketchOf"
              },
              "static": true,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 4208,
                "end": 4356,
                "loc": {
                  "start": {
                    "line": 84,
                    "column": 23
                  },
                  "end": {
                    "line": 90,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 4209,
                    "end": 4212,
                    "loc": {
                      "start": {
                        "line": 84,
                        "column": 24
                      },
                      "end": {
                        "line": 84,
                        "column": 27
                      }
                    },
                    "name": "obj"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 4214,
                  "end": 4356,
                  "loc": {
                    "start": {
                      "line": 84,
                      "column": 29
                    },
                    "end": {
                      "line": 90,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "WhileStatement",
                      "start": 4225,
                      "end": 4349,
                      "loc": {
                        "start": {
                          "line": 85,
                          "column": 8
                        },
                        "end": {
                          "line": 89,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 4232,
                        "end": 4235,
                        "loc": {
                          "start": {
                            "line": 85,
                            "column": 15
                          },
                          "end": {
                            "line": 85,
                            "column": 18
                          }
                        },
                        "name": "obj"
                      },
                      "body": {
                        "type": "BlockStatement",
                        "start": 4237,
                        "end": 4349,
                        "loc": {
                          "start": {
                            "line": 85,
                            "column": 20
                          },
                          "end": {
                            "line": 89,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 4252,
                            "end": 4307,
                            "loc": {
                              "start": {
                                "line": 86,
                                "column": 12
                              },
                              "end": {
                                "line": 87,
                                "column": 27
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 4256,
                              "end": 4277,
                              "loc": {
                                "start": {
                                  "line": 86,
                                  "column": 16
                                },
                                "end": {
                                  "line": 86,
                                  "column": 37
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 4256,
                                "end": 4259,
                                "loc": {
                                  "start": {
                                    "line": 86,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 86,
                                    "column": 19
                                  }
                                },
                                "name": "obj"
                              },
                              "operator": "instanceof",
                              "right": {
                                "type": "Identifier",
                                "start": 4271,
                                "end": 4277,
                                "loc": {
                                  "start": {
                                    "line": 86,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 86,
                                    "column": 37
                                  }
                                },
                                "name": "Sketch"
                              }
                            },
                            "consequent": {
                              "type": "ReturnStatement",
                              "start": 4296,
                              "end": 4307,
                              "loc": {
                                "start": {
                                  "line": 87,
                                  "column": 16
                                },
                                "end": {
                                  "line": 87,
                                  "column": 27
                                }
                              },
                              "argument": {
                                "type": "Identifier",
                                "start": 4303,
                                "end": 4306,
                                "loc": {
                                  "start": {
                                    "line": 87,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 87,
                                    "column": 26
                                  }
                                },
                                "name": "obj"
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 4321,
                            "end": 4338,
                            "loc": {
                              "start": {
                                "line": 88,
                                "column": 12
                              },
                              "end": {
                                "line": 88,
                                "column": 29
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 4321,
                              "end": 4337,
                              "loc": {
                                "start": {
                                  "line": 88,
                                  "column": 12
                                },
                                "end": {
                                  "line": 88,
                                  "column": 28
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 4321,
                                "end": 4324,
                                "loc": {
                                  "start": {
                                    "line": 88,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 88,
                                    "column": 15
                                  }
                                },
                                "name": "obj"
                              },
                              "right": {
                                "type": "MemberExpression",
                                "start": 4327,
                                "end": 4337,
                                "loc": {
                                  "start": {
                                    "line": 88,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 88,
                                    "column": 28
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 4327,
                                  "end": 4330,
                                  "loc": {
                                    "start": {
                                      "line": 88,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 88,
                                      "column": 21
                                    }
                                  },
                                  "name": "obj"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4331,
                                  "end": 4337,
                                  "loc": {
                                    "start": {
                                      "line": 88,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 88,
                                      "column": 28
                                    }
                                  },
                                  "name": "parent"
                                },
                                "computed": false
                              }
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 4364,
              "end": 4549,
              "loc": {
                "start": {
                  "line": 92,
                  "column": 4
                },
                "end": {
                  "line": 98,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 4371,
                "end": 4386,
                "loc": {
                  "start": {
                    "line": 92,
                    "column": 11
                  },
                  "end": {
                    "line": 92,
                    "column": 26
                  }
                },
                "name": "FindSketchSetOf"
              },
              "static": true,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 4386,
                "end": 4549,
                "loc": {
                  "start": {
                    "line": 92,
                    "column": 26
                  },
                  "end": {
                    "line": 98,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 4387,
                    "end": 4390,
                    "loc": {
                      "start": {
                        "line": 92,
                        "column": 27
                      },
                      "end": {
                        "line": 92,
                        "column": 30
                      }
                    },
                    "name": "obj"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 4392,
                  "end": 4549,
                  "loc": {
                    "start": {
                      "line": 92,
                      "column": 32
                    },
                    "end": {
                      "line": 98,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 4403,
                      "end": 4414,
                      "loc": {
                        "start": {
                          "line": 93,
                          "column": 8
                        },
                        "end": {
                          "line": 93,
                          "column": 19
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 4407,
                          "end": 4413,
                          "loc": {
                            "start": {
                              "line": 93,
                              "column": 12
                            },
                            "end": {
                              "line": 93,
                              "column": 18
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 4407,
                            "end": 4413,
                            "loc": {
                              "start": {
                                "line": 93,
                                "column": 12
                              },
                              "end": {
                                "line": 93,
                                "column": 18
                              }
                            },
                            "name": "result"
                          },
                          "init": null
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4424,
                      "end": 4518,
                      "loc": {
                        "start": {
                          "line": 94,
                          "column": 8
                        },
                        "end": {
                          "line": 96,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 4424,
                        "end": 4517,
                        "loc": {
                          "start": {
                            "line": 94,
                            "column": 8
                          },
                          "end": {
                            "line": 96,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 4424,
                          "end": 4445,
                          "loc": {
                            "start": {
                              "line": 94,
                              "column": 8
                            },
                            "end": {
                              "line": 94,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 4424,
                            "end": 4427,
                            "loc": {
                              "start": {
                                "line": 94,
                                "column": 8
                              },
                              "end": {
                                "line": 94,
                                "column": 11
                              }
                            },
                            "name": "obj"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4428,
                            "end": 4445,
                            "loc": {
                              "start": {
                                "line": 94,
                                "column": 12
                              },
                              "end": {
                                "line": 94,
                                "column": 29
                              }
                            },
                            "name": "traverseAncestors"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 4446,
                            "end": 4516,
                            "loc": {
                              "start": {
                                "line": 94,
                                "column": 30
                              },
                              "end": {
                                "line": 96,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 4446,
                                "end": 4447,
                                "loc": {
                                  "start": {
                                    "line": 94,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 94,
                                    "column": 31
                                  }
                                },
                                "name": "s"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 4451,
                              "end": 4516,
                              "loc": {
                                "start": {
                                  "line": 94,
                                  "column": 35
                                },
                                "end": {
                                  "line": 96,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 4466,
                                  "end": 4505,
                                  "loc": {
                                    "start": {
                                      "line": 95,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 95,
                                      "column": 51
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 4466,
                                    "end": 4504,
                                    "loc": {
                                      "start": {
                                        "line": 95,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 95,
                                        "column": 50
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 4466,
                                      "end": 4472,
                                      "loc": {
                                        "start": {
                                          "line": 95,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 95,
                                          "column": 18
                                        }
                                      },
                                      "name": "result"
                                    },
                                    "right": {
                                      "type": "LogicalExpression",
                                      "start": 4475,
                                      "end": 4504,
                                      "loc": {
                                        "start": {
                                          "line": 95,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 95,
                                          "column": 50
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 4475,
                                        "end": 4481,
                                        "loc": {
                                          "start": {
                                            "line": 95,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 95,
                                            "column": 27
                                          }
                                        },
                                        "name": "result"
                                      },
                                      "operator": "||",
                                      "right": {
                                        "type": "MemberExpression",
                                        "start": 4485,
                                        "end": 4504,
                                        "loc": {
                                          "start": {
                                            "line": 95,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 95,
                                            "column": 50
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 4485,
                                          "end": 4494,
                                          "loc": {
                                            "start": {
                                              "line": 95,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 95,
                                              "column": 40
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 4485,
                                            "end": 4486,
                                            "loc": {
                                              "start": {
                                                "line": 95,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 95,
                                                "column": 32
                                              }
                                            },
                                            "name": "s"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 4487,
                                            "end": 4494,
                                            "loc": {
                                              "start": {
                                                "line": 95,
                                                "column": 33
                                              },
                                              "end": {
                                                "line": 95,
                                                "column": 40
                                              }
                                            },
                                            "name": "members"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 4495,
                                          "end": 4504,
                                          "loc": {
                                            "start": {
                                              "line": 95,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 95,
                                              "column": 50
                                            }
                                          },
                                          "name": "SketchSet"
                                        },
                                        "computed": false
                                      }
                                    }
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 4528,
                      "end": 4542,
                      "loc": {
                        "start": {
                          "line": 97,
                          "column": 8
                        },
                        "end": {
                          "line": 97,
                          "column": 22
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 4535,
                        "end": 4541,
                        "loc": {
                          "start": {
                            "line": 97,
                            "column": 15
                          },
                          "end": {
                            "line": 97,
                            "column": 21
                          }
                        },
                        "name": "result"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 4557,
              "end": 4636,
              "loc": {
                "start": {
                  "line": 100,
                  "column": 4
                },
                "end": {
                  "line": 102,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 4557,
                "end": 4564,
                "loc": {
                  "start": {
                    "line": 100,
                    "column": 4
                  },
                  "end": {
                    "line": 100,
                    "column": 11
                  }
                },
                "name": "getPart"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 4564,
                "end": 4636,
                "loc": {
                  "start": {
                    "line": 100,
                    "column": 11
                  },
                  "end": {
                    "line": 102,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 4567,
                  "end": 4636,
                  "loc": {
                    "start": {
                      "line": 100,
                      "column": 14
                    },
                    "end": {
                      "line": 102,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 4578,
                      "end": 4604,
                      "loc": {
                        "start": {
                          "line": 101,
                          "column": 8
                        },
                        "end": {
                          "line": 101,
                          "column": 34
                        }
                      },
                      "argument": {
                        "type": "MemberExpression",
                        "start": 4585,
                        "end": 4603,
                        "loc": {
                          "start": {
                            "line": 101,
                            "column": 15
                          },
                          "end": {
                            "line": 101,
                            "column": 33
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 4585,
                          "end": 4596,
                          "loc": {
                            "start": {
                              "line": 101,
                              "column": 15
                            },
                            "end": {
                              "line": 101,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4585,
                            "end": 4589,
                            "loc": {
                              "start": {
                                "line": 101,
                                "column": 15
                              },
                              "end": {
                                "line": 101,
                                "column": 19
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4590,
                            "end": 4596,
                            "loc": {
                              "start": {
                                "line": 101,
                                "column": 20
                              },
                              "end": {
                                "line": 101,
                                "column": 26
                              }
                            },
                            "name": "parent"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4597,
                          "end": 4603,
                          "loc": {
                            "start": {
                              "line": 101,
                              "column": 27
                            },
                            "end": {
                              "line": 101,
                              "column": 33
                            }
                          },
                          "name": "parent"
                        },
                        "computed": false
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " Part.SketchSet.Sketch",
                          "start": 4605,
                          "end": 4629,
                          "loc": {
                            "start": {
                              "line": 101,
                              "column": 35
                            },
                            "end": {
                              "line": 101,
                              "column": 59
                            }
                          },
                          "range": [
                            4605,
                            4629
                          ]
                        }
                      ]
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Physically add objects to the sketch (in contrast to addAuxObject)",
                  "start": 4644,
                  "end": 4713,
                  "loc": {
                    "start": {
                      "line": 104,
                      "column": 4
                    },
                    "end": {
                      "line": 104,
                      "column": 73
                    }
                  },
                  "range": [
                    4644,
                    4713
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " If some objects were previously added with addAuxObject, automatically remove them from aux objects",
                  "start": 4719,
                  "end": 4821,
                  "loc": {
                    "start": {
                      "line": 105,
                      "column": 4
                    },
                    "end": {
                      "line": 105,
                      "column": 106
                    }
                  },
                  "range": [
                    4719,
                    4821
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " possible options:",
                  "start": 4827,
                  "end": 4847,
                  "loc": {
                    "start": {
                      "line": 106,
                      "column": 4
                    },
                    "end": {
                      "line": 106,
                      "column": 24
                    }
                  },
                  "range": [
                    4827,
                    4847
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   onServer (default: true) - whether to send commands to the server.",
                  "start": 4853,
                  "end": 4924,
                  "loc": {
                    "start": {
                      "line": 107,
                      "column": 4
                    },
                    "end": {
                      "line": 107,
                      "column": 75
                    }
                  },
                  "range": [
                    4853,
                    4924
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   onClient (default: true) - whether to add objects to children",
                  "start": 4930,
                  "end": 4996,
                  "loc": {
                    "start": {
                      "line": 108,
                      "column": 4
                    },
                    "end": {
                      "line": 108,
                      "column": 70
                    }
                  },
                  "range": [
                    4930,
                    4996
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   autoconstraint (default: false) - if true, then implied constraints are generated if neccessary.",
                  "start": 5002,
                  "end": 5103,
                  "loc": {
                    "start": {
                      "line": 109,
                      "column": 4
                    },
                    "end": {
                      "line": 109,
                      "column": 105
                    }
                  },
                  "range": [
                    5002,
                    5103
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   updateSketch (default: false) - whether to update sketch state for the whole sketch, not only for objets. Pass true when adding constraints.",
                  "start": 5109,
                  "end": 5254,
                  "loc": {
                    "start": {
                      "line": 110,
                      "column": 4
                    },
                    "end": {
                      "line": 110,
                      "column": 149
                    }
                  },
                  "range": [
                    5109,
                    5254
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 5260,
              "end": 7253,
              "loc": {
                "start": {
                  "line": 111,
                  "column": 4
                },
                "end": {
                  "line": 154,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5260,
                "end": 5271,
                "loc": {
                  "start": {
                    "line": 111,
                    "column": 4
                  },
                  "end": {
                    "line": 111,
                    "column": 15
                  }
                },
                "name": "addToSketch",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5271,
                "end": 7253,
                "loc": {
                  "start": {
                    "line": 111,
                    "column": 15
                  },
                  "end": {
                    "line": 154,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 5272,
                    "end": 5279,
                    "loc": {
                      "start": {
                        "line": 111,
                        "column": 16
                      },
                      "end": {
                        "line": 111,
                        "column": 23
                      }
                    },
                    "name": "objects"
                  },
                  {
                    "type": "AssignmentPattern",
                    "start": 5281,
                    "end": 5293,
                    "loc": {
                      "start": {
                        "line": 111,
                        "column": 25
                      },
                      "end": {
                        "line": 111,
                        "column": 37
                      }
                    },
                    "operator": "=",
                    "left": {
                      "type": "Identifier",
                      "start": 5281,
                      "end": 5288,
                      "loc": {
                        "start": {
                          "line": 111,
                          "column": 25
                        },
                        "end": {
                          "line": 111,
                          "column": 32
                        }
                      },
                      "name": "options"
                    },
                    "right": {
                      "type": "ObjectExpression",
                      "start": 5291,
                      "end": 5293,
                      "loc": {
                        "start": {
                          "line": 111,
                          "column": 35
                        },
                        "end": {
                          "line": 111,
                          "column": 37
                        }
                      },
                      "properties": []
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 5295,
                  "end": 7253,
                  "loc": {
                    "start": {
                      "line": 111,
                      "column": 39
                    },
                    "end": {
                      "line": 154,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 5306,
                      "end": 5366,
                      "loc": {
                        "start": {
                          "line": 112,
                          "column": 8
                        },
                        "end": {
                          "line": 112,
                          "column": 68
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 5310,
                        "end": 5340,
                        "loc": {
                          "start": {
                            "line": 112,
                            "column": 12
                          },
                          "end": {
                            "line": 112,
                            "column": 42
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 5310,
                          "end": 5326,
                          "loc": {
                            "start": {
                              "line": 112,
                              "column": 12
                            },
                            "end": {
                              "line": 112,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5310,
                            "end": 5317,
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 12
                              },
                              "end": {
                                "line": 112,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5318,
                            "end": 5326,
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 20
                              },
                              "end": {
                                "line": 112,
                                "column": 28
                              }
                            },
                            "name": "onServer"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 5331,
                          "end": 5340,
                          "loc": {
                            "start": {
                              "line": 112,
                              "column": 33
                            },
                            "end": {
                              "line": 112,
                              "column": 42
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 5342,
                        "end": 5366,
                        "loc": {
                          "start": {
                            "line": 112,
                            "column": 44
                          },
                          "end": {
                            "line": 112,
                            "column": 68
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 5342,
                          "end": 5365,
                          "loc": {
                            "start": {
                              "line": 112,
                              "column": 44
                            },
                            "end": {
                              "line": 112,
                              "column": 67
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 5342,
                            "end": 5358,
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 44
                              },
                              "end": {
                                "line": 112,
                                "column": 60
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5342,
                              "end": 5349,
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 44
                                },
                                "end": {
                                  "line": 112,
                                  "column": 51
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5350,
                              "end": 5358,
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 52
                                },
                                "end": {
                                  "line": 112,
                                  "column": 60
                                }
                              },
                              "name": "onServer"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 5361,
                            "end": 5365,
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 63
                              },
                              "end": {
                                "line": 112,
                                "column": 67
                              }
                            },
                            "value": true,
                            "rawValue": true,
                            "raw": "true"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 5376,
                      "end": 5436,
                      "loc": {
                        "start": {
                          "line": 113,
                          "column": 8
                        },
                        "end": {
                          "line": 113,
                          "column": 68
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 5380,
                        "end": 5410,
                        "loc": {
                          "start": {
                            "line": 113,
                            "column": 12
                          },
                          "end": {
                            "line": 113,
                            "column": 42
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 5380,
                          "end": 5396,
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 12
                            },
                            "end": {
                              "line": 113,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5380,
                            "end": 5387,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 12
                              },
                              "end": {
                                "line": 113,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5388,
                            "end": 5396,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 20
                              },
                              "end": {
                                "line": 113,
                                "column": 28
                              }
                            },
                            "name": "onClient"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 5401,
                          "end": 5410,
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 33
                            },
                            "end": {
                              "line": 113,
                              "column": 42
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 5412,
                        "end": 5436,
                        "loc": {
                          "start": {
                            "line": 113,
                            "column": 44
                          },
                          "end": {
                            "line": 113,
                            "column": 68
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 5412,
                          "end": 5435,
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 44
                            },
                            "end": {
                              "line": 113,
                              "column": 67
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 5412,
                            "end": 5428,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 44
                              },
                              "end": {
                                "line": 113,
                                "column": 60
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5412,
                              "end": 5419,
                              "loc": {
                                "start": {
                                  "line": 113,
                                  "column": 44
                                },
                                "end": {
                                  "line": 113,
                                  "column": 51
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5420,
                              "end": 5428,
                              "loc": {
                                "start": {
                                  "line": 113,
                                  "column": 52
                                },
                                "end": {
                                  "line": 113,
                                  "column": 60
                                }
                              },
                              "name": "onClient"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 5431,
                            "end": 5435,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 63
                              },
                              "end": {
                                "line": 113,
                                "column": 67
                              }
                            },
                            "value": true,
                            "rawValue": true,
                            "raw": "true"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 5446,
                      "end": 5515,
                      "loc": {
                        "start": {
                          "line": 114,
                          "column": 8
                        },
                        "end": {
                          "line": 114,
                          "column": 77
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 5450,
                        "end": 5484,
                        "loc": {
                          "start": {
                            "line": 114,
                            "column": 12
                          },
                          "end": {
                            "line": 114,
                            "column": 46
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 5450,
                          "end": 5470,
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 12
                            },
                            "end": {
                              "line": 114,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5450,
                            "end": 5457,
                            "loc": {
                              "start": {
                                "line": 114,
                                "column": 12
                              },
                              "end": {
                                "line": 114,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5458,
                            "end": 5470,
                            "loc": {
                              "start": {
                                "line": 114,
                                "column": 20
                              },
                              "end": {
                                "line": 114,
                                "column": 32
                              }
                            },
                            "name": "updateSketch"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 5475,
                          "end": 5484,
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 37
                            },
                            "end": {
                              "line": 114,
                              "column": 46
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 5486,
                        "end": 5515,
                        "loc": {
                          "start": {
                            "line": 114,
                            "column": 48
                          },
                          "end": {
                            "line": 114,
                            "column": 77
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 5486,
                          "end": 5514,
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 48
                            },
                            "end": {
                              "line": 114,
                              "column": 76
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 5486,
                            "end": 5506,
                            "loc": {
                              "start": {
                                "line": 114,
                                "column": 48
                              },
                              "end": {
                                "line": 114,
                                "column": 68
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5486,
                              "end": 5493,
                              "loc": {
                                "start": {
                                  "line": 114,
                                  "column": 48
                                },
                                "end": {
                                  "line": 114,
                                  "column": 55
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5494,
                              "end": 5506,
                              "loc": {
                                "start": {
                                  "line": 114,
                                  "column": 56
                                },
                                "end": {
                                  "line": 114,
                                  "column": 68
                                }
                              },
                              "name": "updateSketch"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 5509,
                            "end": 5514,
                            "loc": {
                              "start": {
                                "line": 114,
                                "column": 71
                              },
                              "end": {
                                "line": 114,
                                "column": 76
                              }
                            },
                            "value": false,
                            "rawValue": false,
                            "raw": "false"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 5525,
                      "end": 5598,
                      "loc": {
                        "start": {
                          "line": 115,
                          "column": 8
                        },
                        "end": {
                          "line": 115,
                          "column": 81
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 5529,
                        "end": 5565,
                        "loc": {
                          "start": {
                            "line": 115,
                            "column": 12
                          },
                          "end": {
                            "line": 115,
                            "column": 48
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 5529,
                          "end": 5551,
                          "loc": {
                            "start": {
                              "line": 115,
                              "column": 12
                            },
                            "end": {
                              "line": 115,
                              "column": 34
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5529,
                            "end": 5536,
                            "loc": {
                              "start": {
                                "line": 115,
                                "column": 12
                              },
                              "end": {
                                "line": 115,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5537,
                            "end": 5551,
                            "loc": {
                              "start": {
                                "line": 115,
                                "column": 20
                              },
                              "end": {
                                "line": 115,
                                "column": 34
                              }
                            },
                            "name": "autoconstraint"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 5556,
                          "end": 5565,
                          "loc": {
                            "start": {
                              "line": 115,
                              "column": 39
                            },
                            "end": {
                              "line": 115,
                              "column": 48
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 5567,
                        "end": 5598,
                        "loc": {
                          "start": {
                            "line": 115,
                            "column": 50
                          },
                          "end": {
                            "line": 115,
                            "column": 81
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 5567,
                          "end": 5597,
                          "loc": {
                            "start": {
                              "line": 115,
                              "column": 50
                            },
                            "end": {
                              "line": 115,
                              "column": 80
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 5567,
                            "end": 5589,
                            "loc": {
                              "start": {
                                "line": 115,
                                "column": 50
                              },
                              "end": {
                                "line": 115,
                                "column": 72
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5567,
                              "end": 5574,
                              "loc": {
                                "start": {
                                  "line": 115,
                                  "column": 50
                                },
                                "end": {
                                  "line": 115,
                                  "column": 57
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5575,
                              "end": 5589,
                              "loc": {
                                "start": {
                                  "line": 115,
                                  "column": 58
                                },
                                "end": {
                                  "line": 115,
                                  "column": 72
                                }
                              },
                              "name": "autoconstraint"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 5592,
                            "end": 5597,
                            "loc": {
                              "start": {
                                "line": 115,
                                "column": 75
                              },
                              "end": {
                                "line": 115,
                                "column": 80
                              }
                            },
                            "value": false,
                            "rawValue": false,
                            "raw": "false"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 5610,
                      "end": 5639,
                      "loc": {
                        "start": {
                          "line": 117,
                          "column": 8
                        },
                        "end": {
                          "line": 117,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 5610,
                        "end": 5638,
                        "loc": {
                          "start": {
                            "line": 117,
                            "column": 8
                          },
                          "end": {
                            "line": 117,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 5610,
                          "end": 5617,
                          "loc": {
                            "start": {
                              "line": 117,
                              "column": 8
                            },
                            "end": {
                              "line": 117,
                              "column": 15
                            }
                          },
                          "name": "objects"
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 5620,
                          "end": 5638,
                          "loc": {
                            "start": {
                              "line": 117,
                              "column": 18
                            },
                            "end": {
                              "line": 117,
                              "column": 36
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5620,
                            "end": 5629,
                            "loc": {
                              "start": {
                                "line": 117,
                                "column": 18
                              },
                              "end": {
                                "line": 117,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "ArrayExpression",
                              "start": 5620,
                              "end": 5622,
                              "loc": {
                                "start": {
                                  "line": 117,
                                  "column": 18
                                },
                                "end": {
                                  "line": 117,
                                  "column": 20
                                }
                              },
                              "elements": []
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5623,
                              "end": 5629,
                              "loc": {
                                "start": {
                                  "line": 117,
                                  "column": 21
                                },
                                "end": {
                                  "line": 117,
                                  "column": 27
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 5630,
                              "end": 5637,
                              "loc": {
                                "start": {
                                  "line": 117,
                                  "column": 28
                                },
                                "end": {
                                  "line": 117,
                                  "column": 35
                                }
                              },
                              "name": "objects"
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 5649,
                      "end": 5678,
                      "loc": {
                        "start": {
                          "line": 118,
                          "column": 8
                        },
                        "end": {
                          "line": 118,
                          "column": 37
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 5653,
                          "end": 5677,
                          "loc": {
                            "start": {
                              "line": 118,
                              "column": 12
                            },
                            "end": {
                              "line": 118,
                              "column": 36
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 5653,
                            "end": 5661,
                            "loc": {
                              "start": {
                                "line": 118,
                                "column": 12
                              },
                              "end": {
                                "line": 118,
                                "column": 20
                              }
                            },
                            "name": "sketcher"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 5664,
                            "end": 5677,
                            "loc": {
                              "start": {
                                "line": 118,
                                "column": 23
                              },
                              "end": {
                                "line": 118,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 5664,
                              "end": 5668,
                              "loc": {
                                "start": {
                                  "line": 118,
                                  "column": 23
                                },
                                "end": {
                                  "line": 118,
                                  "column": 27
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5669,
                              "end": 5677,
                              "loc": {
                                "start": {
                                  "line": 118,
                                  "column": 28
                                },
                                "end": {
                                  "line": 118,
                                  "column": 36
                                }
                              },
                              "name": "sketcher"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 5688,
                      "end": 5713,
                      "loc": {
                        "start": {
                          "line": 119,
                          "column": 8
                        },
                        "end": {
                          "line": 119,
                          "column": 33
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 5692,
                          "end": 5712,
                          "loc": {
                            "start": {
                              "line": 119,
                              "column": 12
                            },
                            "end": {
                              "line": 119,
                              "column": 32
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 5692,
                            "end": 5696,
                            "loc": {
                              "start": {
                                "line": 119,
                                "column": 12
                              },
                              "end": {
                                "line": 119,
                                "column": 16
                              }
                            },
                            "name": "view"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 5699,
                            "end": 5712,
                            "loc": {
                              "start": {
                                "line": 119,
                                "column": 19
                              },
                              "end": {
                                "line": 119,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5699,
                              "end": 5707,
                              "loc": {
                                "start": {
                                  "line": 119,
                                  "column": 19
                                },
                                "end": {
                                  "line": 119,
                                  "column": 27
                                }
                              },
                              "name": "sketcher"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5708,
                              "end": 5712,
                              "loc": {
                                "start": {
                                  "line": 119,
                                  "column": 28
                                },
                                "end": {
                                  "line": 119,
                                  "column": 32
                                }
                              },
                              "name": "view"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 5725,
                      "end": 5789,
                      "loc": {
                        "start": {
                          "line": 121,
                          "column": 8
                        },
                        "end": {
                          "line": 122,
                          "column": 37
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 5729,
                        "end": 5749,
                        "loc": {
                          "start": {
                            "line": 121,
                            "column": 12
                          },
                          "end": {
                            "line": 121,
                            "column": 32
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 5729,
                          "end": 5743,
                          "loc": {
                            "start": {
                              "line": 121,
                              "column": 12
                            },
                            "end": {
                              "line": 121,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5729,
                            "end": 5736,
                            "loc": {
                              "start": {
                                "line": 121,
                                "column": 12
                              },
                              "end": {
                                "line": 121,
                                "column": 19
                              }
                            },
                            "name": "objects"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5737,
                            "end": 5743,
                            "loc": {
                              "start": {
                                "line": 121,
                                "column": 20
                              },
                              "end": {
                                "line": 121,
                                "column": 26
                              }
                            },
                            "name": "length"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Literal",
                          "start": 5748,
                          "end": 5749,
                          "loc": {
                            "start": {
                              "line": 121,
                              "column": 31
                            },
                            "end": {
                              "line": 121,
                              "column": 32
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 5764,
                        "end": 5789,
                        "loc": {
                          "start": {
                            "line": 122,
                            "column": 12
                          },
                          "end": {
                            "line": 122,
                            "column": 37
                          }
                        },
                        "argument": {
                          "type": "CallExpression",
                          "start": 5771,
                          "end": 5788,
                          "loc": {
                            "start": {
                              "line": 122,
                              "column": 19
                            },
                            "end": {
                              "line": 122,
                              "column": 36
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5771,
                            "end": 5786,
                            "loc": {
                              "start": {
                                "line": 122,
                                "column": 19
                              },
                              "end": {
                                "line": 122,
                                "column": 34
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5771,
                              "end": 5778,
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 19
                                },
                                "end": {
                                  "line": 122,
                                  "column": 26
                                }
                              },
                              "name": "Promise"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5779,
                              "end": 5786,
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 27
                                },
                                "end": {
                                  "line": 122,
                                  "column": 34
                                }
                              },
                              "name": "resolve"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 5801,
                      "end": 5866,
                      "loc": {
                        "start": {
                          "line": 124,
                          "column": 8
                        },
                        "end": {
                          "line": 125,
                          "column": 42
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 5805,
                        "end": 5821,
                        "loc": {
                          "start": {
                            "line": 124,
                            "column": 12
                          },
                          "end": {
                            "line": 124,
                            "column": 28
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 5805,
                          "end": 5812,
                          "loc": {
                            "start": {
                              "line": 124,
                              "column": 12
                            },
                            "end": {
                              "line": 124,
                              "column": 19
                            }
                          },
                          "name": "options"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 5813,
                          "end": 5821,
                          "loc": {
                            "start": {
                              "line": 124,
                              "column": 20
                            },
                            "end": {
                              "line": 124,
                              "column": 28
                            }
                          },
                          "name": "onClient"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 5836,
                        "end": 5866,
                        "loc": {
                          "start": {
                            "line": 125,
                            "column": 12
                          },
                          "end": {
                            "line": 125,
                            "column": 42
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 5836,
                          "end": 5865,
                          "loc": {
                            "start": {
                              "line": 125,
                              "column": 12
                            },
                            "end": {
                              "line": 125,
                              "column": 41
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5836,
                            "end": 5850,
                            "loc": {
                              "start": {
                                "line": 125,
                                "column": 12
                              },
                              "end": {
                                "line": 125,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 5836,
                              "end": 5844,
                              "loc": {
                                "start": {
                                  "line": 125,
                                  "column": 12
                                },
                                "end": {
                                  "line": 125,
                                  "column": 20
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 5836,
                                "end": 5840,
                                "loc": {
                                  "start": {
                                    "line": 125,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 125,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5841,
                                "end": 5844,
                                "loc": {
                                  "start": {
                                    "line": 125,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 125,
                                    "column": 20
                                  }
                                },
                                "name": "add"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5845,
                              "end": 5850,
                              "loc": {
                                "start": {
                                  "line": 125,
                                  "column": 21
                                },
                                "end": {
                                  "line": 125,
                                  "column": 26
                                }
                              },
                              "name": "apply"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ThisExpression",
                              "start": 5851,
                              "end": 5855,
                              "loc": {
                                "start": {
                                  "line": 125,
                                  "column": 27
                                },
                                "end": {
                                  "line": 125,
                                  "column": 31
                                }
                              }
                            },
                            {
                              "type": "Identifier",
                              "start": 5857,
                              "end": 5864,
                              "loc": {
                                "start": {
                                  "line": 125,
                                  "column": 33
                                },
                                "end": {
                                  "line": 125,
                                  "column": 40
                                }
                              },
                              "name": "objects"
                            }
                          ]
                        },
                        "trailingComments": null
                      },
                      "alternate": null,
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " must be done before server command so that parseObjectTree can find the objects in children",
                          "start": 5867,
                          "end": 5961,
                          "loc": {
                            "start": {
                              "line": 125,
                              "column": 43
                            },
                            "end": {
                              "line": 125,
                              "column": 137
                            }
                          },
                          "range": [
                            5867,
                            5961
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 5973,
                      "end": 6783,
                      "loc": {
                        "start": {
                          "line": 127,
                          "column": 8
                        },
                        "end": {
                          "line": 143,
                          "column": 10
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 5977,
                          "end": 6782,
                          "loc": {
                            "start": {
                              "line": 127,
                              "column": 12
                            },
                            "end": {
                              "line": 143,
                              "column": 9
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 5977,
                            "end": 5988,
                            "loc": {
                              "start": {
                                "line": 127,
                                "column": 12
                              },
                              "end": {
                                "line": 127,
                                "column": 23
                              }
                            },
                            "name": "afterServer",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "ArrowFunctionExpression",
                            "start": 5991,
                            "end": 6782,
                            "loc": {
                              "start": {
                                "line": 127,
                                "column": 26
                              },
                              "end": {
                                "line": 143,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [],
                            "body": {
                              "type": "BlockStatement",
                              "start": 5997,
                              "end": 6782,
                              "loc": {
                                "start": {
                                  "line": 127,
                                  "column": 32
                                },
                                "end": {
                                  "line": 143,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 6012,
                                  "end": 6286,
                                  "loc": {
                                    "start": {
                                      "line": 128,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 134,
                                      "column": 15
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 6012,
                                    "end": 6285,
                                    "loc": {
                                      "start": {
                                        "line": 128,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 134,
                                        "column": 14
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 6012,
                                      "end": 6027,
                                      "loc": {
                                        "start": {
                                          "line": 128,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 128,
                                          "column": 27
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 6012,
                                        "end": 6019,
                                        "loc": {
                                          "start": {
                                            "line": 128,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 128,
                                            "column": 19
                                          }
                                        },
                                        "name": "objects"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 6020,
                                        "end": 6027,
                                        "loc": {
                                          "start": {
                                            "line": 128,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 128,
                                            "column": 27
                                          }
                                        },
                                        "name": "forEach"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrowFunctionExpression",
                                        "start": 6028,
                                        "end": 6284,
                                        "loc": {
                                          "start": {
                                            "line": 128,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 134,
                                            "column": 13
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": false,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 6028,
                                            "end": 6031,
                                            "loc": {
                                              "start": {
                                                "line": 128,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 128,
                                                "column": 31
                                              }
                                            },
                                            "name": "obj"
                                          }
                                        ],
                                        "body": {
                                          "type": "BlockStatement",
                                          "start": 6035,
                                          "end": 6284,
                                          "loc": {
                                            "start": {
                                              "line": 128,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 134,
                                              "column": 13
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "IfStatement",
                                              "start": 6054,
                                              "end": 6115,
                                              "loc": {
                                                "start": {
                                                  "line": 129,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 130,
                                                  "column": 27
                                                }
                                              },
                                              "test": {
                                                "type": "CallExpression",
                                                "start": 6058,
                                                "end": 6085,
                                                "loc": {
                                                  "start": {
                                                    "line": 129,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 129,
                                                    "column": 47
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 6058,
                                                  "end": 6080,
                                                  "loc": {
                                                    "start": {
                                                      "line": 129,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 129,
                                                      "column": 42
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 6058,
                                                    "end": 6076,
                                                    "loc": {
                                                      "start": {
                                                        "line": 129,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 129,
                                                        "column": 38
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "ThisExpression",
                                                      "start": 6058,
                                                      "end": 6062,
                                                      "loc": {
                                                        "start": {
                                                          "line": 129,
                                                          "column": 20
                                                        },
                                                        "end": {
                                                          "line": 129,
                                                          "column": 24
                                                        }
                                                      }
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 6063,
                                                      "end": 6076,
                                                      "loc": {
                                                        "start": {
                                                          "line": 129,
                                                          "column": 25
                                                        },
                                                        "end": {
                                                          "line": 129,
                                                          "column": 38
                                                        }
                                                      },
                                                      "name": "sketchObjects"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 6077,
                                                    "end": 6080,
                                                    "loc": {
                                                      "start": {
                                                        "line": 129,
                                                        "column": 39
                                                      },
                                                      "end": {
                                                        "line": 129,
                                                        "column": 42
                                                      }
                                                    },
                                                    "name": "has"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 6081,
                                                    "end": 6084,
                                                    "loc": {
                                                      "start": {
                                                        "line": 129,
                                                        "column": 43
                                                      },
                                                      "end": {
                                                        "line": 129,
                                                        "column": 46
                                                      }
                                                    },
                                                    "name": "obj"
                                                  }
                                                ]
                                              },
                                              "consequent": {
                                                "type": "ReturnStatement",
                                                "start": 6108,
                                                "end": 6115,
                                                "loc": {
                                                  "start": {
                                                    "line": 130,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 130,
                                                    "column": 27
                                                  }
                                                },
                                                "argument": null
                                              },
                                              "alternate": null
                                            },
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 6133,
                                              "end": 6161,
                                              "loc": {
                                                "start": {
                                                  "line": 131,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 131,
                                                  "column": 44
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 6133,
                                                "end": 6160,
                                                "loc": {
                                                  "start": {
                                                    "line": 131,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 131,
                                                    "column": 43
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 6133,
                                                  "end": 6155,
                                                  "loc": {
                                                    "start": {
                                                      "line": 131,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 131,
                                                      "column": 38
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 6133,
                                                    "end": 6151,
                                                    "loc": {
                                                      "start": {
                                                        "line": 131,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 131,
                                                        "column": 34
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "ThisExpression",
                                                      "start": 6133,
                                                      "end": 6137,
                                                      "loc": {
                                                        "start": {
                                                          "line": 131,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 131,
                                                          "column": 20
                                                        }
                                                      }
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 6138,
                                                      "end": 6151,
                                                      "loc": {
                                                        "start": {
                                                          "line": 131,
                                                          "column": 21
                                                        },
                                                        "end": {
                                                          "line": 131,
                                                          "column": 34
                                                        }
                                                      },
                                                      "name": "sketchObjects"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 6152,
                                                    "end": 6155,
                                                    "loc": {
                                                      "start": {
                                                        "line": 131,
                                                        "column": 35
                                                      },
                                                      "end": {
                                                        "line": 131,
                                                        "column": 38
                                                      }
                                                    },
                                                    "name": "add"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 6156,
                                                    "end": 6159,
                                                    "loc": {
                                                      "start": {
                                                        "line": 131,
                                                        "column": 39
                                                      },
                                                      "end": {
                                                        "line": 131,
                                                        "column": 42
                                                      }
                                                    },
                                                    "name": "obj"
                                                  }
                                                ]
                                              }
                                            },
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 6179,
                                              "end": 6221,
                                              "loc": {
                                                "start": {
                                                  "line": 132,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 132,
                                                  "column": 58
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 6179,
                                                "end": 6220,
                                                "loc": {
                                                  "start": {
                                                    "line": 132,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 132,
                                                    "column": 57
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 6179,
                                                  "end": 6209,
                                                  "loc": {
                                                    "start": {
                                                      "line": 132,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 132,
                                                      "column": 46
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 6179,
                                                    "end": 6187,
                                                    "loc": {
                                                      "start": {
                                                        "line": 132,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 132,
                                                        "column": 24
                                                      }
                                                    },
                                                    "name": "Sketcher"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 6188,
                                                    "end": 6209,
                                                    "loc": {
                                                      "start": {
                                                        "line": 132,
                                                        "column": 25
                                                      },
                                                      "end": {
                                                        "line": 132,
                                                        "column": 46
                                                      }
                                                    },
                                                    "name": "registerVisualization"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 6210,
                                                    "end": 6214,
                                                    "loc": {
                                                      "start": {
                                                        "line": 132,
                                                        "column": 47
                                                      },
                                                      "end": {
                                                        "line": 132,
                                                        "column": 51
                                                      }
                                                    },
                                                    "name": "view"
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 6216,
                                                    "end": 6219,
                                                    "loc": {
                                                      "start": {
                                                        "line": 132,
                                                        "column": 53
                                                      },
                                                      "end": {
                                                        "line": 132,
                                                        "column": 56
                                                      }
                                                    },
                                                    "name": "obj"
                                                  }
                                                ]
                                              }
                                            },
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 6239,
                                              "end": 6269,
                                              "loc": {
                                                "start": {
                                                  "line": 133,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 133,
                                                  "column": 46
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 6239,
                                                "end": 6268,
                                                "loc": {
                                                  "start": {
                                                    "line": 133,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 133,
                                                    "column": 45
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 6239,
                                                  "end": 6248,
                                                  "loc": {
                                                    "start": {
                                                      "line": 133,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 133,
                                                      "column": 25
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "ThisExpression",
                                                    "start": 6239,
                                                    "end": 6243,
                                                    "loc": {
                                                      "start": {
                                                        "line": 133,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 133,
                                                        "column": 20
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 6244,
                                                    "end": 6248,
                                                    "loc": {
                                                      "start": {
                                                        "line": 133,
                                                        "column": 21
                                                      },
                                                      "end": {
                                                        "line": 133,
                                                        "column": 25
                                                      }
                                                    },
                                                    "name": "emit"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Literal",
                                                    "start": 6249,
                                                    "end": 6262,
                                                    "loc": {
                                                      "start": {
                                                        "line": 133,
                                                        "column": 26
                                                      },
                                                      "end": {
                                                        "line": 133,
                                                        "column": 39
                                                      }
                                                    },
                                                    "value": "SketchAdded",
                                                    "rawValue": "SketchAdded",
                                                    "raw": "'SketchAdded'"
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 6264,
                                                    "end": 6267,
                                                    "loc": {
                                                      "start": {
                                                        "line": 133,
                                                        "column": 41
                                                      },
                                                      "end": {
                                                        "line": 133,
                                                        "column": 44
                                                      }
                                                    },
                                                    "name": "obj"
                                                  }
                                                ]
                                              }
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 6302,
                                  "end": 6771,
                                  "loc": {
                                    "start": {
                                      "line": 136,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 142,
                                      "column": 13
                                    }
                                  },
                                  "test": {
                                    "type": "LogicalExpression",
                                    "start": 6306,
                                    "end": 6371,
                                    "loc": {
                                      "start": {
                                        "line": 136,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 136,
                                        "column": 81
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 6306,
                                      "end": 6328,
                                      "loc": {
                                        "start": {
                                          "line": 136,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 136,
                                          "column": 38
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 6306,
                                        "end": 6313,
                                        "loc": {
                                          "start": {
                                            "line": 136,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 136,
                                            "column": 23
                                          }
                                        },
                                        "name": "options"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 6314,
                                        "end": 6328,
                                        "loc": {
                                          "start": {
                                            "line": 136,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 136,
                                            "column": 38
                                          }
                                        },
                                        "name": "autoconstraint"
                                      },
                                      "computed": false
                                    },
                                    "operator": "&&",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 6332,
                                      "end": 6371,
                                      "loc": {
                                        "start": {
                                          "line": 136,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 136,
                                          "column": 81
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 6332,
                                        "end": 6345,
                                        "loc": {
                                          "start": {
                                            "line": 136,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 136,
                                            "column": 55
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 6332,
                                          "end": 6340,
                                          "loc": {
                                            "start": {
                                              "line": 136,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 136,
                                              "column": 50
                                            }
                                          },
                                          "name": "sketcher"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 6341,
                                          "end": 6345,
                                          "loc": {
                                            "start": {
                                              "line": 136,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 136,
                                              "column": 55
                                            }
                                          },
                                          "name": "data"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 6346,
                                        "end": 6371,
                                        "loc": {
                                          "start": {
                                            "line": 136,
                                            "column": 56
                                          },
                                          "end": {
                                            "line": 136,
                                            "column": 81
                                          }
                                        },
                                        "name": "autoconstraintIncremental"
                                      },
                                      "computed": false
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 6373,
                                    "end": 6771,
                                    "loc": {
                                      "start": {
                                        "line": 136,
                                        "column": 83
                                      },
                                      "end": {
                                        "line": 142,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 6475,
                                        "end": 6519,
                                        "loc": {
                                          "start": {
                                            "line": 138,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 138,
                                            "column": 60
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 6479,
                                            "end": 6518,
                                            "loc": {
                                              "start": {
                                                "line": 138,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 138,
                                                "column": 59
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 6479,
                                              "end": 6486,
                                              "loc": {
                                                "start": {
                                                  "line": 138,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 138,
                                                  "column": 27
                                                }
                                              },
                                              "name": "autogen",
                                              "leadingComments": null
                                            },
                                            "init": {
                                              "type": "NewExpression",
                                              "start": 6489,
                                              "end": 6518,
                                              "loc": {
                                                "start": {
                                                  "line": 138,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 138,
                                                  "column": 59
                                                }
                                              },
                                              "callee": {
                                                "type": "Identifier",
                                                "start": 6493,
                                                "end": 6512,
                                                "loc": {
                                                  "start": {
                                                    "line": 138,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 138,
                                                    "column": 53
                                                  }
                                                },
                                                "name": "ConstraintGenerator"
                                              },
                                              "arguments": [
                                                {
                                                  "type": "ThisExpression",
                                                  "start": 6513,
                                                  "end": 6517,
                                                  "loc": {
                                                    "start": {
                                                      "line": 138,
                                                      "column": 54
                                                    },
                                                    "end": {
                                                      "line": 138,
                                                      "column": 58
                                                    }
                                                  }
                                                }
                                              ]
                                            },
                                            "leadingComments": null
                                          }
                                        ],
                                        "kind": "var",
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "generate implied constraints for the objects just drawn by user",
                                            "start": 6392,
                                            "end": 6457,
                                            "loc": {
                                              "start": {
                                                "line": 137,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 137,
                                                "column": 81
                                              }
                                            },
                                            "range": [
                                              6392,
                                              6457
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 6537,
                                        "end": 6630,
                                        "loc": {
                                          "start": {
                                            "line": 139,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 139,
                                            "column": 109
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 6541,
                                            "end": 6629,
                                            "loc": {
                                              "start": {
                                                "line": 139,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 139,
                                                "column": 108
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 6541,
                                              "end": 6552,
                                              "loc": {
                                                "start": {
                                                  "line": 139,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 139,
                                                  "column": 31
                                                }
                                              },
                                              "name": "constraints"
                                            },
                                            "init": {
                                              "type": "CallExpression",
                                              "start": 6555,
                                              "end": 6629,
                                              "loc": {
                                                "start": {
                                                  "line": 139,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 139,
                                                  "column": 108
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 6555,
                                                "end": 6589,
                                                "loc": {
                                                  "start": {
                                                    "line": 139,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 139,
                                                    "column": 68
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 6555,
                                                  "end": 6562,
                                                  "loc": {
                                                    "start": {
                                                      "line": 139,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 139,
                                                      "column": 41
                                                    }
                                                  },
                                                  "name": "autogen"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 6563,
                                                  "end": 6589,
                                                  "loc": {
                                                    "start": {
                                                      "line": 139,
                                                      "column": 42
                                                    },
                                                    "end": {
                                                      "line": 139,
                                                      "column": 68
                                                    }
                                                  },
                                                  "name": "generateImpliedConstraints"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "CallExpression",
                                                  "start": 6590,
                                                  "end": 6628,
                                                  "loc": {
                                                    "start": {
                                                      "line": 139,
                                                      "column": 69
                                                    },
                                                    "end": {
                                                      "line": 139,
                                                      "column": 107
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "MemberExpression",
                                                    "start": 6590,
                                                    "end": 6619,
                                                    "loc": {
                                                      "start": {
                                                        "line": 139,
                                                        "column": 69
                                                      },
                                                      "end": {
                                                        "line": 139,
                                                        "column": 98
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 6590,
                                                      "end": 6596,
                                                      "loc": {
                                                        "start": {
                                                          "line": 139,
                                                          "column": 69
                                                        },
                                                        "end": {
                                                          "line": 139,
                                                          "column": 75
                                                        }
                                                      },
                                                      "name": "Sketch"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 6597,
                                                      "end": 6619,
                                                      "loc": {
                                                        "start": {
                                                          "line": 139,
                                                          "column": 76
                                                        },
                                                        "end": {
                                                          "line": 139,
                                                          "column": 98
                                                        }
                                                      },
                                                      "name": "ForObjectsWithChildren"
                                                    },
                                                    "computed": false
                                                  },
                                                  "arguments": [
                                                    {
                                                      "type": "Identifier",
                                                      "start": 6620,
                                                      "end": 6627,
                                                      "loc": {
                                                        "start": {
                                                          "line": 139,
                                                          "column": 99
                                                        },
                                                        "end": {
                                                          "line": 139,
                                                          "column": 106
                                                        }
                                                      },
                                                      "name": "objects"
                                                    }
                                                  ]
                                                }
                                              ]
                                            }
                                          }
                                        ],
                                        "kind": "var"
                                      },
                                      {
                                        "type": "IfStatement",
                                        "start": 6648,
                                        "end": 6756,
                                        "loc": {
                                          "start": {
                                            "line": 140,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 141,
                                            "column": 79
                                          }
                                        },
                                        "test": {
                                          "type": "BinaryExpression",
                                          "start": 6652,
                                          "end": 6674,
                                          "loc": {
                                            "start": {
                                              "line": 140,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 140,
                                              "column": 42
                                            }
                                          },
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 6652,
                                            "end": 6670,
                                            "loc": {
                                              "start": {
                                                "line": 140,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 140,
                                                "column": 38
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 6652,
                                              "end": 6663,
                                              "loc": {
                                                "start": {
                                                  "line": 140,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 140,
                                                  "column": 31
                                                }
                                              },
                                              "name": "constraints"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 6664,
                                              "end": 6670,
                                              "loc": {
                                                "start": {
                                                  "line": 140,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 140,
                                                  "column": 38
                                                }
                                              },
                                              "name": "length"
                                            },
                                            "computed": false
                                          },
                                          "operator": ">",
                                          "right": {
                                            "type": "Literal",
                                            "start": 6673,
                                            "end": 6674,
                                            "loc": {
                                              "start": {
                                                "line": 140,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 140,
                                                "column": 42
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0"
                                          }
                                        },
                                        "consequent": {
                                          "type": "ReturnStatement",
                                          "start": 6697,
                                          "end": 6756,
                                          "loc": {
                                            "start": {
                                              "line": 141,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 141,
                                              "column": 79
                                            }
                                          },
                                          "argument": {
                                            "type": "CallExpression",
                                            "start": 6704,
                                            "end": 6755,
                                            "loc": {
                                              "start": {
                                                "line": 141,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 141,
                                                "column": 78
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 6704,
                                              "end": 6720,
                                              "loc": {
                                                "start": {
                                                  "line": 141,
                                                  "column": 27
                                                },
                                                "end": {
                                                  "line": 141,
                                                  "column": 43
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 6704,
                                                "end": 6708,
                                                "loc": {
                                                  "start": {
                                                    "line": 141,
                                                    "column": 27
                                                  },
                                                  "end": {
                                                    "line": 141,
                                                    "column": 31
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 6709,
                                                "end": 6720,
                                                "loc": {
                                                  "start": {
                                                    "line": 141,
                                                    "column": 32
                                                  },
                                                  "end": {
                                                    "line": 141,
                                                    "column": 43
                                                  }
                                                },
                                                "name": "addToSketch"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 6721,
                                                "end": 6732,
                                                "loc": {
                                                  "start": {
                                                    "line": 141,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 141,
                                                    "column": 55
                                                  }
                                                },
                                                "name": "constraints"
                                              },
                                              {
                                                "type": "ObjectExpression",
                                                "start": 6734,
                                                "end": 6754,
                                                "loc": {
                                                  "start": {
                                                    "line": 141,
                                                    "column": 57
                                                  },
                                                  "end": {
                                                    "line": 141,
                                                    "column": 77
                                                  }
                                                },
                                                "properties": [
                                                  {
                                                    "type": "Property",
                                                    "start": 6735,
                                                    "end": 6753,
                                                    "loc": {
                                                      "start": {
                                                        "line": 141,
                                                        "column": 58
                                                      },
                                                      "end": {
                                                        "line": 141,
                                                        "column": 76
                                                      }
                                                    },
                                                    "method": false,
                                                    "shorthand": false,
                                                    "computed": false,
                                                    "key": {
                                                      "type": "Identifier",
                                                      "start": 6735,
                                                      "end": 6747,
                                                      "loc": {
                                                        "start": {
                                                          "line": 141,
                                                          "column": 58
                                                        },
                                                        "end": {
                                                          "line": 141,
                                                          "column": 70
                                                        }
                                                      },
                                                      "name": "updateSketch"
                                                    },
                                                    "value": {
                                                      "type": "Literal",
                                                      "start": 6749,
                                                      "end": 6753,
                                                      "loc": {
                                                        "start": {
                                                          "line": 141,
                                                          "column": 72
                                                        },
                                                        "end": {
                                                          "line": 141,
                                                          "column": 76
                                                        }
                                                      },
                                                      "value": true,
                                                      "rawValue": true,
                                                      "raw": "true"
                                                    },
                                                    "kind": "init"
                                                  }
                                                ]
                                              }
                                            ]
                                          }
                                        },
                                        "alternate": null
                                      }
                                    ]
                                  },
                                  "alternate": null
                                }
                              ]
                            }
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "var",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " must be done before server command so that parseObjectTree can find the objects in children",
                          "start": 5867,
                          "end": 5961,
                          "loc": {
                            "start": {
                              "line": 125,
                              "column": 43
                            },
                            "end": {
                              "line": 125,
                              "column": 137
                            }
                          },
                          "range": [
                            5867,
                            5961
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " add objects to the sketch on the server and, if successful, on the client",
                          "start": 6795,
                          "end": 6871,
                          "loc": {
                            "start": {
                              "line": 145,
                              "column": 8
                            },
                            "end": {
                              "line": 145,
                              "column": 84
                            }
                          },
                          "range": [
                            6795,
                            6871
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 6881,
                      "end": 7196,
                      "loc": {
                        "start": {
                          "line": 146,
                          "column": 8
                        },
                        "end": {
                          "line": 151,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 6885,
                        "end": 6901,
                        "loc": {
                          "start": {
                            "line": 146,
                            "column": 12
                          },
                          "end": {
                            "line": 146,
                            "column": 28
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 6885,
                          "end": 6892,
                          "loc": {
                            "start": {
                              "line": 146,
                              "column": 12
                            },
                            "end": {
                              "line": 146,
                              "column": 19
                            }
                          },
                          "name": "options",
                          "leadingComments": null
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 6893,
                          "end": 6901,
                          "loc": {
                            "start": {
                              "line": 146,
                              "column": 20
                            },
                            "end": {
                              "line": 146,
                              "column": 28
                            }
                          },
                          "name": "onServer"
                        },
                        "computed": false,
                        "leadingComments": null
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 6903,
                        "end": 7196,
                        "loc": {
                          "start": {
                            "line": 146,
                            "column": 30
                          },
                          "end": {
                            "line": 151,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 6918,
                            "end": 6992,
                            "loc": {
                              "start": {
                                "line": 147,
                                "column": 12
                              },
                              "end": {
                                "line": 147,
                                "column": 86
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 6924,
                                "end": 6991,
                                "loc": {
                                  "start": {
                                    "line": 147,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 147,
                                    "column": 85
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 6924,
                                  "end": 6934,
                                  "loc": {
                                    "start": {
                                      "line": 147,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 147,
                                      "column": 28
                                    }
                                  },
                                  "name": "statements"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 6937,
                                  "end": 6991,
                                  "loc": {
                                    "start": {
                                      "line": 147,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 147,
                                      "column": 85
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 6937,
                                    "end": 6948,
                                    "loc": {
                                      "start": {
                                        "line": 147,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 147,
                                        "column": 42
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 6937,
                                      "end": 6944,
                                      "loc": {
                                        "start": {
                                          "line": 147,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 147,
                                          "column": 38
                                        }
                                      },
                                      "name": "objects"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6945,
                                      "end": 6948,
                                      "loc": {
                                        "start": {
                                          "line": 147,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 147,
                                          "column": 42
                                        }
                                      },
                                      "name": "map"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "ArrowFunctionExpression",
                                      "start": 6949,
                                      "end": 6990,
                                      "loc": {
                                        "start": {
                                          "line": 147,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 147,
                                          "column": 84
                                        }
                                      },
                                      "id": null,
                                      "generator": false,
                                      "expression": true,
                                      "async": false,
                                      "params": [
                                        {
                                          "type": "Identifier",
                                          "start": 6949,
                                          "end": 6955,
                                          "loc": {
                                            "start": {
                                              "line": 147,
                                              "column": 43
                                            },
                                            "end": {
                                              "line": 147,
                                              "column": 49
                                            }
                                          },
                                          "name": "object"
                                        }
                                      ],
                                      "body": {
                                        "type": "CallExpression",
                                        "start": 6959,
                                        "end": 6990,
                                        "loc": {
                                          "start": {
                                            "line": 147,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 147,
                                            "column": 84
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 6959,
                                          "end": 6984,
                                          "loc": {
                                            "start": {
                                              "line": 147,
                                              "column": 53
                                            },
                                            "end": {
                                              "line": 147,
                                              "column": 78
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 6959,
                                            "end": 6965,
                                            "loc": {
                                              "start": {
                                                "line": 147,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 147,
                                                "column": 59
                                              }
                                            },
                                            "name": "object"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 6966,
                                            "end": 6984,
                                            "loc": {
                                              "start": {
                                                "line": 147,
                                                "column": 60
                                              },
                                              "end": {
                                                "line": 147,
                                                "column": 78
                                              }
                                            },
                                            "name": "prepareAddOnServer"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 6985,
                                            "end": 6989,
                                            "loc": {
                                              "start": {
                                                "line": 147,
                                                "column": 79
                                              },
                                              "end": {
                                                "line": 147,
                                                "column": 83
                                              }
                                            }
                                          }
                                        ]
                                      }
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "const",
                            "trailingComments": [
                              {
                                "type": "Block",
                                "value": "            if (options.updateSketch)\r\n                statements.push(this.updateFromServer());",
                                "start": 6994,
                                "end": 7094,
                                "loc": {
                                  "start": {
                                    "line": 148,
                                    "column": 0
                                  },
                                  "end": {
                                    "line": 149,
                                    "column": 59
                                  }
                                },
                                "range": [
                                  6994,
                                  7094
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 7108,
                            "end": 7185,
                            "loc": {
                              "start": {
                                "line": 150,
                                "column": 12
                              },
                              "end": {
                                "line": 150,
                                "column": 89
                              }
                            },
                            "argument": {
                              "type": "CallExpression",
                              "start": 7115,
                              "end": 7184,
                              "loc": {
                                "start": {
                                  "line": 150,
                                  "column": 19
                                },
                                "end": {
                                  "line": 150,
                                  "column": 88
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 7115,
                                "end": 7171,
                                "loc": {
                                  "start": {
                                    "line": 150,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 150,
                                    "column": 75
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 7115,
                                  "end": 7166,
                                  "loc": {
                                    "start": {
                                      "line": 150,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 150,
                                      "column": 70
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 7115,
                                    "end": 7149,
                                    "loc": {
                                      "start": {
                                        "line": 150,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 150,
                                        "column": 53
                                      }
                                    },
                                    "object": {
                                      "type": "CallExpression",
                                      "start": 7115,
                                      "end": 7141,
                                      "loc": {
                                        "start": {
                                          "line": 150,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 150,
                                          "column": 45
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 7115,
                                        "end": 7129,
                                        "loc": {
                                          "start": {
                                            "line": 150,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 150,
                                            "column": 33
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 7115,
                                          "end": 7125,
                                          "loc": {
                                            "start": {
                                              "line": 150,
                                              "column": 19
                                            },
                                            "end": {
                                              "line": 150,
                                              "column": 29
                                            }
                                          },
                                          "name": "Statements",
                                          "leadingComments": null
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 7126,
                                          "end": 7129,
                                          "loc": {
                                            "start": {
                                              "line": 150,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 150,
                                              "column": 33
                                            }
                                          },
                                          "name": "all"
                                        },
                                        "computed": false,
                                        "leadingComments": null
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 7130,
                                          "end": 7140,
                                          "loc": {
                                            "start": {
                                              "line": 150,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 150,
                                              "column": 44
                                            }
                                          },
                                          "name": "statements"
                                        }
                                      ],
                                      "leadingComments": null
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7142,
                                      "end": 7149,
                                      "loc": {
                                        "start": {
                                          "line": 150,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 150,
                                          "column": 53
                                        }
                                      },
                                      "name": "execute"
                                    },
                                    "computed": false,
                                    "leadingComments": null
                                  },
                                  "arguments": [
                                    {
                                      "type": "MemberExpression",
                                      "start": 7150,
                                      "end": 7165,
                                      "loc": {
                                        "start": {
                                          "line": 150,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 150,
                                          "column": 69
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 7150,
                                        "end": 7158,
                                        "loc": {
                                          "start": {
                                            "line": 150,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 150,
                                            "column": 62
                                          }
                                        },
                                        "name": "sketcher"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 7159,
                                        "end": 7165,
                                        "loc": {
                                          "start": {
                                            "line": 150,
                                            "column": 63
                                          },
                                          "end": {
                                            "line": 150,
                                            "column": 69
                                          }
                                        },
                                        "name": "socket"
                                      },
                                      "computed": false
                                    }
                                  ],
                                  "leadingComments": null
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7167,
                                  "end": 7171,
                                  "loc": {
                                    "start": {
                                      "line": 150,
                                      "column": 71
                                    },
                                    "end": {
                                      "line": 150,
                                      "column": 75
                                    }
                                  },
                                  "name": "then"
                                },
                                "computed": false,
                                "leadingComments": null
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 7172,
                                  "end": 7183,
                                  "loc": {
                                    "start": {
                                      "line": 150,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 150,
                                      "column": 87
                                    }
                                  },
                                  "name": "afterServer"
                                }
                              ],
                              "leadingComments": null
                            },
                            "leadingComments": [
                              {
                                "type": "Block",
                                "value": "            if (options.updateSketch)\r\n                statements.push(this.updateFromServer());",
                                "start": 6994,
                                "end": 7094,
                                "loc": {
                                  "start": {
                                    "line": 148,
                                    "column": 0
                                  },
                                  "end": {
                                    "line": 149,
                                    "column": 59
                                  }
                                },
                                "range": [
                                  6994,
                                  7094
                                ]
                              }
                            ]
                          }
                        ]
                      },
                      "alternate": null,
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " add objects to the sketch on the server and, if successful, on the client",
                          "start": 6795,
                          "end": 6871,
                          "loc": {
                            "start": {
                              "line": 145,
                              "column": 8
                            },
                            "end": {
                              "line": 145,
                              "column": 84
                            }
                          },
                          "range": [
                            6795,
                            6871
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 7208,
                      "end": 7246,
                      "loc": {
                        "start": {
                          "line": 153,
                          "column": 8
                        },
                        "end": {
                          "line": 153,
                          "column": 46
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 7215,
                        "end": 7245,
                        "loc": {
                          "start": {
                            "line": 153,
                            "column": 15
                          },
                          "end": {
                            "line": 153,
                            "column": 45
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 7215,
                          "end": 7230,
                          "loc": {
                            "start": {
                              "line": 153,
                              "column": 15
                            },
                            "end": {
                              "line": 153,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 7215,
                            "end": 7222,
                            "loc": {
                              "start": {
                                "line": 153,
                                "column": 15
                              },
                              "end": {
                                "line": 153,
                                "column": 22
                              }
                            },
                            "name": "Promise"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7223,
                            "end": 7230,
                            "loc": {
                              "start": {
                                "line": 153,
                                "column": 23
                              },
                              "end": {
                                "line": 153,
                                "column": 30
                              }
                            },
                            "name": "resolve"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 7231,
                            "end": 7244,
                            "loc": {
                              "start": {
                                "line": 153,
                                "column": 31
                              },
                              "end": {
                                "line": 153,
                                "column": 44
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 7231,
                              "end": 7242,
                              "loc": {
                                "start": {
                                  "line": 153,
                                  "column": 31
                                },
                                "end": {
                                  "line": 153,
                                  "column": 42
                                }
                              },
                              "name": "afterServer"
                            },
                            "arguments": []
                          }
                        ]
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Part.SketchSet.Sketch",
                  "start": 4605,
                  "end": 4629,
                  "loc": {
                    "start": {
                      "line": 101,
                      "column": 35
                    },
                    "end": {
                      "line": 101,
                      "column": 59
                    }
                  },
                  "range": [
                    4605,
                    4629
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " Physically add objects to the sketch (in contrast to addAuxObject)",
                  "start": 4644,
                  "end": 4713,
                  "loc": {
                    "start": {
                      "line": 104,
                      "column": 4
                    },
                    "end": {
                      "line": 104,
                      "column": 73
                    }
                  },
                  "range": [
                    4644,
                    4713
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " If some objects were previously added with addAuxObject, automatically remove them from aux objects",
                  "start": 4719,
                  "end": 4821,
                  "loc": {
                    "start": {
                      "line": 105,
                      "column": 4
                    },
                    "end": {
                      "line": 105,
                      "column": 106
                    }
                  },
                  "range": [
                    4719,
                    4821
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " possible options:",
                  "start": 4827,
                  "end": 4847,
                  "loc": {
                    "start": {
                      "line": 106,
                      "column": 4
                    },
                    "end": {
                      "line": 106,
                      "column": 24
                    }
                  },
                  "range": [
                    4827,
                    4847
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   onServer (default: true) - whether to send commands to the server.",
                  "start": 4853,
                  "end": 4924,
                  "loc": {
                    "start": {
                      "line": 107,
                      "column": 4
                    },
                    "end": {
                      "line": 107,
                      "column": 75
                    }
                  },
                  "range": [
                    4853,
                    4924
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   onClient (default: true) - whether to add objects to children",
                  "start": 4930,
                  "end": 4996,
                  "loc": {
                    "start": {
                      "line": 108,
                      "column": 4
                    },
                    "end": {
                      "line": 108,
                      "column": 70
                    }
                  },
                  "range": [
                    4930,
                    4996
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   autoconstraint (default: false) - if true, then implied constraints are generated if neccessary.",
                  "start": 5002,
                  "end": 5103,
                  "loc": {
                    "start": {
                      "line": 109,
                      "column": 4
                    },
                    "end": {
                      "line": 109,
                      "column": 105
                    }
                  },
                  "range": [
                    5002,
                    5103
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   updateSketch (default: false) - whether to update sketch state for the whole sketch, not only for objets. Pass true when adding constraints.",
                  "start": 5109,
                  "end": 5254,
                  "loc": {
                    "start": {
                      "line": 110,
                      "column": 4
                    },
                    "end": {
                      "line": 110,
                      "column": 149
                    }
                  },
                  "range": [
                    5109,
                    5254
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Remove objects previously added with addToSketch",
                  "start": 7261,
                  "end": 7312,
                  "loc": {
                    "start": {
                      "line": 156,
                      "column": 4
                    },
                    "end": {
                      "line": 156,
                      "column": 55
                    }
                  },
                  "range": [
                    7261,
                    7312
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 7318,
              "end": 8898,
              "loc": {
                "start": {
                  "line": 157,
                  "column": 4
                },
                "end": {
                  "line": 190,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 7324,
                "end": 7340,
                "loc": {
                  "start": {
                    "line": 157,
                    "column": 10
                  },
                  "end": {
                    "line": 157,
                    "column": 26
                  }
                },
                "name": "removeFromSketch"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 7340,
                "end": 8898,
                "loc": {
                  "start": {
                    "line": 157,
                    "column": 26
                  },
                  "end": {
                    "line": 190,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 7341,
                    "end": 7348,
                    "loc": {
                      "start": {
                        "line": 157,
                        "column": 27
                      },
                      "end": {
                        "line": 157,
                        "column": 34
                      }
                    },
                    "name": "objects"
                  },
                  {
                    "type": "AssignmentPattern",
                    "start": 7350,
                    "end": 7362,
                    "loc": {
                      "start": {
                        "line": 157,
                        "column": 36
                      },
                      "end": {
                        "line": 157,
                        "column": 48
                      }
                    },
                    "operator": "=",
                    "left": {
                      "type": "Identifier",
                      "start": 7350,
                      "end": 7357,
                      "loc": {
                        "start": {
                          "line": 157,
                          "column": 36
                        },
                        "end": {
                          "line": 157,
                          "column": 43
                        }
                      },
                      "name": "options"
                    },
                    "right": {
                      "type": "ObjectExpression",
                      "start": 7360,
                      "end": 7362,
                      "loc": {
                        "start": {
                          "line": 157,
                          "column": 46
                        },
                        "end": {
                          "line": 157,
                          "column": 48
                        }
                      },
                      "properties": []
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 7364,
                  "end": 8898,
                  "loc": {
                    "start": {
                      "line": 157,
                      "column": 50
                    },
                    "end": {
                      "line": 190,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 7375,
                      "end": 7435,
                      "loc": {
                        "start": {
                          "line": 158,
                          "column": 8
                        },
                        "end": {
                          "line": 158,
                          "column": 68
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 7379,
                        "end": 7409,
                        "loc": {
                          "start": {
                            "line": 158,
                            "column": 12
                          },
                          "end": {
                            "line": 158,
                            "column": 42
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 7379,
                          "end": 7395,
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 12
                            },
                            "end": {
                              "line": 158,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 7379,
                            "end": 7386,
                            "loc": {
                              "start": {
                                "line": 158,
                                "column": 12
                              },
                              "end": {
                                "line": 158,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7387,
                            "end": 7395,
                            "loc": {
                              "start": {
                                "line": 158,
                                "column": 20
                              },
                              "end": {
                                "line": 158,
                                "column": 28
                              }
                            },
                            "name": "onServer"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 7400,
                          "end": 7409,
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 33
                            },
                            "end": {
                              "line": 158,
                              "column": 42
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 7411,
                        "end": 7435,
                        "loc": {
                          "start": {
                            "line": 158,
                            "column": 44
                          },
                          "end": {
                            "line": 158,
                            "column": 68
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 7411,
                          "end": 7434,
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 44
                            },
                            "end": {
                              "line": 158,
                              "column": 67
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 7411,
                            "end": 7427,
                            "loc": {
                              "start": {
                                "line": 158,
                                "column": 44
                              },
                              "end": {
                                "line": 158,
                                "column": 60
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7411,
                              "end": 7418,
                              "loc": {
                                "start": {
                                  "line": 158,
                                  "column": 44
                                },
                                "end": {
                                  "line": 158,
                                  "column": 51
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7419,
                              "end": 7427,
                              "loc": {
                                "start": {
                                  "line": 158,
                                  "column": 52
                                },
                                "end": {
                                  "line": 158,
                                  "column": 60
                                }
                              },
                              "name": "onServer"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 7430,
                            "end": 7434,
                            "loc": {
                              "start": {
                                "line": 158,
                                "column": 63
                              },
                              "end": {
                                "line": 158,
                                "column": 67
                              }
                            },
                            "value": true,
                            "rawValue": true,
                            "raw": "true"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 7445,
                      "end": 7505,
                      "loc": {
                        "start": {
                          "line": 159,
                          "column": 8
                        },
                        "end": {
                          "line": 159,
                          "column": 68
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 7449,
                        "end": 7479,
                        "loc": {
                          "start": {
                            "line": 159,
                            "column": 12
                          },
                          "end": {
                            "line": 159,
                            "column": 42
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 7449,
                          "end": 7465,
                          "loc": {
                            "start": {
                              "line": 159,
                              "column": 12
                            },
                            "end": {
                              "line": 159,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 7449,
                            "end": 7456,
                            "loc": {
                              "start": {
                                "line": 159,
                                "column": 12
                              },
                              "end": {
                                "line": 159,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7457,
                            "end": 7465,
                            "loc": {
                              "start": {
                                "line": 159,
                                "column": 20
                              },
                              "end": {
                                "line": 159,
                                "column": 28
                              }
                            },
                            "name": "onClient"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 7470,
                          "end": 7479,
                          "loc": {
                            "start": {
                              "line": 159,
                              "column": 33
                            },
                            "end": {
                              "line": 159,
                              "column": 42
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 7481,
                        "end": 7505,
                        "loc": {
                          "start": {
                            "line": 159,
                            "column": 44
                          },
                          "end": {
                            "line": 159,
                            "column": 68
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 7481,
                          "end": 7504,
                          "loc": {
                            "start": {
                              "line": 159,
                              "column": 44
                            },
                            "end": {
                              "line": 159,
                              "column": 67
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 7481,
                            "end": 7497,
                            "loc": {
                              "start": {
                                "line": 159,
                                "column": 44
                              },
                              "end": {
                                "line": 159,
                                "column": 60
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7481,
                              "end": 7488,
                              "loc": {
                                "start": {
                                  "line": 159,
                                  "column": 44
                                },
                                "end": {
                                  "line": 159,
                                  "column": 51
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7489,
                              "end": 7497,
                              "loc": {
                                "start": {
                                  "line": 159,
                                  "column": 52
                                },
                                "end": {
                                  "line": 159,
                                  "column": 60
                                }
                              },
                              "name": "onClient"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 7500,
                            "end": 7504,
                            "loc": {
                              "start": {
                                "line": 159,
                                "column": 63
                              },
                              "end": {
                                "line": 159,
                                "column": 67
                              }
                            },
                            "value": true,
                            "rawValue": true,
                            "raw": "true"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 7515,
                      "end": 7584,
                      "loc": {
                        "start": {
                          "line": 160,
                          "column": 8
                        },
                        "end": {
                          "line": 160,
                          "column": 77
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 7519,
                        "end": 7553,
                        "loc": {
                          "start": {
                            "line": 160,
                            "column": 12
                          },
                          "end": {
                            "line": 160,
                            "column": 46
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 7519,
                          "end": 7539,
                          "loc": {
                            "start": {
                              "line": 160,
                              "column": 12
                            },
                            "end": {
                              "line": 160,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 7519,
                            "end": 7526,
                            "loc": {
                              "start": {
                                "line": 160,
                                "column": 12
                              },
                              "end": {
                                "line": 160,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7527,
                            "end": 7539,
                            "loc": {
                              "start": {
                                "line": 160,
                                "column": 20
                              },
                              "end": {
                                "line": 160,
                                "column": 32
                              }
                            },
                            "name": "updateSketch"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 7544,
                          "end": 7553,
                          "loc": {
                            "start": {
                              "line": 160,
                              "column": 37
                            },
                            "end": {
                              "line": 160,
                              "column": 46
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 7555,
                        "end": 7584,
                        "loc": {
                          "start": {
                            "line": 160,
                            "column": 48
                          },
                          "end": {
                            "line": 160,
                            "column": 77
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 7555,
                          "end": 7583,
                          "loc": {
                            "start": {
                              "line": 160,
                              "column": 48
                            },
                            "end": {
                              "line": 160,
                              "column": 76
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 7555,
                            "end": 7575,
                            "loc": {
                              "start": {
                                "line": 160,
                                "column": 48
                              },
                              "end": {
                                "line": 160,
                                "column": 68
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7555,
                              "end": 7562,
                              "loc": {
                                "start": {
                                  "line": 160,
                                  "column": 48
                                },
                                "end": {
                                  "line": 160,
                                  "column": 55
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7563,
                              "end": 7575,
                              "loc": {
                                "start": {
                                  "line": 160,
                                  "column": 56
                                },
                                "end": {
                                  "line": 160,
                                  "column": 68
                                }
                              },
                              "name": "updateSketch"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 7578,
                            "end": 7583,
                            "loc": {
                              "start": {
                                "line": 160,
                                "column": 71
                              },
                              "end": {
                                "line": 160,
                                "column": 76
                              }
                            },
                            "value": false,
                            "rawValue": false,
                            "raw": "false"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7596,
                      "end": 7625,
                      "loc": {
                        "start": {
                          "line": 162,
                          "column": 8
                        },
                        "end": {
                          "line": 162,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 7596,
                        "end": 7624,
                        "loc": {
                          "start": {
                            "line": 162,
                            "column": 8
                          },
                          "end": {
                            "line": 162,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 7596,
                          "end": 7603,
                          "loc": {
                            "start": {
                              "line": 162,
                              "column": 8
                            },
                            "end": {
                              "line": 162,
                              "column": 15
                            }
                          },
                          "name": "objects"
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 7606,
                          "end": 7624,
                          "loc": {
                            "start": {
                              "line": 162,
                              "column": 18
                            },
                            "end": {
                              "line": 162,
                              "column": 36
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 7606,
                            "end": 7615,
                            "loc": {
                              "start": {
                                "line": 162,
                                "column": 18
                              },
                              "end": {
                                "line": 162,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "ArrayExpression",
                              "start": 7606,
                              "end": 7608,
                              "loc": {
                                "start": {
                                  "line": 162,
                                  "column": 18
                                },
                                "end": {
                                  "line": 162,
                                  "column": 20
                                }
                              },
                              "elements": []
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7609,
                              "end": 7615,
                              "loc": {
                                "start": {
                                  "line": 162,
                                  "column": 21
                                },
                                "end": {
                                  "line": 162,
                                  "column": 27
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 7616,
                              "end": 7623,
                              "loc": {
                                "start": {
                                  "line": 162,
                                  "column": 28
                                },
                                "end": {
                                  "line": 162,
                                  "column": 35
                                }
                              },
                              "name": "objects"
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 7635,
                      "end": 7664,
                      "loc": {
                        "start": {
                          "line": 163,
                          "column": 8
                        },
                        "end": {
                          "line": 163,
                          "column": 37
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7639,
                          "end": 7663,
                          "loc": {
                            "start": {
                              "line": 163,
                              "column": 12
                            },
                            "end": {
                              "line": 163,
                              "column": 36
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7639,
                            "end": 7647,
                            "loc": {
                              "start": {
                                "line": 163,
                                "column": 12
                              },
                              "end": {
                                "line": 163,
                                "column": 20
                              }
                            },
                            "name": "sketcher"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 7650,
                            "end": 7663,
                            "loc": {
                              "start": {
                                "line": 163,
                                "column": 23
                              },
                              "end": {
                                "line": 163,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 7650,
                              "end": 7654,
                              "loc": {
                                "start": {
                                  "line": 163,
                                  "column": 23
                                },
                                "end": {
                                  "line": 163,
                                  "column": 27
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7655,
                              "end": 7663,
                              "loc": {
                                "start": {
                                  "line": 163,
                                  "column": 28
                                },
                                "end": {
                                  "line": 163,
                                  "column": 36
                                }
                              },
                              "name": "sketcher"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 7674,
                      "end": 7699,
                      "loc": {
                        "start": {
                          "line": 164,
                          "column": 8
                        },
                        "end": {
                          "line": 164,
                          "column": 33
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7678,
                          "end": 7698,
                          "loc": {
                            "start": {
                              "line": 164,
                              "column": 12
                            },
                            "end": {
                              "line": 164,
                              "column": 32
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7678,
                            "end": 7682,
                            "loc": {
                              "start": {
                                "line": 164,
                                "column": 12
                              },
                              "end": {
                                "line": 164,
                                "column": 16
                              }
                            },
                            "name": "view"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 7685,
                            "end": 7698,
                            "loc": {
                              "start": {
                                "line": 164,
                                "column": 19
                              },
                              "end": {
                                "line": 164,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7685,
                              "end": 7693,
                              "loc": {
                                "start": {
                                  "line": 164,
                                  "column": 19
                                },
                                "end": {
                                  "line": 164,
                                  "column": 27
                                }
                              },
                              "name": "sketcher"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7694,
                              "end": 7698,
                              "loc": {
                                "start": {
                                  "line": 164,
                                  "column": 28
                                },
                                "end": {
                                  "line": 164,
                                  "column": 32
                                }
                              },
                              "name": "view"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var",
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "add related constraints for removal (before objects)",
                          "start": 7711,
                          "end": 7765,
                          "loc": {
                            "start": {
                              "line": 166,
                              "column": 8
                            },
                            "end": {
                              "line": 166,
                              "column": 62
                            }
                          },
                          "range": [
                            7711,
                            7765
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 7775,
                      "end": 7830,
                      "loc": {
                        "start": {
                          "line": 167,
                          "column": 8
                        },
                        "end": {
                          "line": 167,
                          "column": 63
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7779,
                          "end": 7829,
                          "loc": {
                            "start": {
                              "line": 167,
                              "column": 12
                            },
                            "end": {
                              "line": 167,
                              "column": 62
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7779,
                            "end": 7788,
                            "loc": {
                              "start": {
                                "line": 167,
                                "column": 12
                              },
                              "end": {
                                "line": 167,
                                "column": 21
                              }
                            },
                            "name": "objectsCh",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 7791,
                            "end": 7829,
                            "loc": {
                              "start": {
                                "line": 167,
                                "column": 24
                              },
                              "end": {
                                "line": 167,
                                "column": 62
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7791,
                              "end": 7820,
                              "loc": {
                                "start": {
                                  "line": 167,
                                  "column": 24
                                },
                                "end": {
                                  "line": 167,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 7791,
                                "end": 7797,
                                "loc": {
                                  "start": {
                                    "line": 167,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 167,
                                    "column": 30
                                  }
                                },
                                "name": "Sketch"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7798,
                                "end": 7820,
                                "loc": {
                                  "start": {
                                    "line": 167,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 167,
                                    "column": 53
                                  }
                                },
                                "name": "ForObjectsWithChildren"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 7821,
                                "end": 7828,
                                "loc": {
                                  "start": {
                                    "line": 167,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 167,
                                    "column": 61
                                  }
                                },
                                "name": "objects"
                              }
                            ]
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "var",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "add related constraints for removal (before objects)",
                          "start": 7711,
                          "end": 7765,
                          "loc": {
                            "start": {
                              "line": 166,
                              "column": 8
                            },
                            "end": {
                              "line": 166,
                              "column": 62
                            }
                          },
                          "range": [
                            7711,
                            7765
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 7840,
                      "end": 7904,
                      "loc": {
                        "start": {
                          "line": 168,
                          "column": 8
                        },
                        "end": {
                          "line": 168,
                          "column": 72
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7844,
                          "end": 7903,
                          "loc": {
                            "start": {
                              "line": 168,
                              "column": 12
                            },
                            "end": {
                              "line": 168,
                              "column": 71
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7844,
                            "end": 7862,
                            "loc": {
                              "start": {
                                "line": 168,
                                "column": 12
                              },
                              "end": {
                                "line": 168,
                                "column": 30
                              }
                            },
                            "name": "relatedConstraints"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 7865,
                            "end": 7903,
                            "loc": {
                              "start": {
                                "line": 168,
                                "column": 33
                              },
                              "end": {
                                "line": 168,
                                "column": 71
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7865,
                              "end": 7892,
                              "loc": {
                                "start": {
                                  "line": 168,
                                  "column": 33
                                },
                                "end": {
                                  "line": 168,
                                  "column": 60
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 7865,
                                "end": 7869,
                                "loc": {
                                  "start": {
                                    "line": 168,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 168,
                                    "column": 37
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7870,
                                "end": 7892,
                                "loc": {
                                  "start": {
                                    "line": 168,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 168,
                                    "column": 60
                                  }
                                },
                                "name": "getConstraintsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 7893,
                                "end": 7902,
                                "loc": {
                                  "start": {
                                    "line": 168,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 168,
                                    "column": 70
                                  }
                                },
                                "name": "objectsCh"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7914,
                      "end": 8013,
                      "loc": {
                        "start": {
                          "line": 169,
                          "column": 8
                        },
                        "end": {
                          "line": 169,
                          "column": 107
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 7914,
                        "end": 8012,
                        "loc": {
                          "start": {
                            "line": 169,
                            "column": 8
                          },
                          "end": {
                            "line": 169,
                            "column": 106
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 7914,
                          "end": 7921,
                          "loc": {
                            "start": {
                              "line": 169,
                              "column": 8
                            },
                            "end": {
                              "line": 169,
                              "column": 15
                            }
                          },
                          "name": "objects"
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 7924,
                          "end": 8012,
                          "loc": {
                            "start": {
                              "line": 169,
                              "column": 18
                            },
                            "end": {
                              "line": 169,
                              "column": 106
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 7924,
                            "end": 7949,
                            "loc": {
                              "start": {
                                "line": 169,
                                "column": 18
                              },
                              "end": {
                                "line": 169,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7924,
                              "end": 7942,
                              "loc": {
                                "start": {
                                  "line": 169,
                                  "column": 18
                                },
                                "end": {
                                  "line": 169,
                                  "column": 36
                                }
                              },
                              "name": "relatedConstraints"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7943,
                              "end": 7949,
                              "loc": {
                                "start": {
                                  "line": 169,
                                  "column": 37
                                },
                                "end": {
                                  "line": 169,
                                  "column": 43
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 7950,
                              "end": 8011,
                              "loc": {
                                "start": {
                                  "line": 169,
                                  "column": 44
                                },
                                "end": {
                                  "line": 169,
                                  "column": 105
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 7950,
                                "end": 7964,
                                "loc": {
                                  "start": {
                                    "line": 169,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 169,
                                    "column": 58
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 7950,
                                  "end": 7957,
                                  "loc": {
                                    "start": {
                                      "line": 169,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 169,
                                      "column": 51
                                    }
                                  },
                                  "name": "objects"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7958,
                                  "end": 7964,
                                  "loc": {
                                    "start": {
                                      "line": 169,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 169,
                                      "column": 58
                                    }
                                  },
                                  "name": "filter"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ArrowFunctionExpression",
                                  "start": 7965,
                                  "end": 8010,
                                  "loc": {
                                    "start": {
                                      "line": 169,
                                      "column": 59
                                    },
                                    "end": {
                                      "line": 169,
                                      "column": 104
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": true,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 7965,
                                      "end": 7968,
                                      "loc": {
                                        "start": {
                                          "line": 169,
                                          "column": 59
                                        },
                                        "end": {
                                          "line": 169,
                                          "column": 62
                                        }
                                      },
                                      "name": "obj"
                                    }
                                  ],
                                  "body": {
                                    "type": "BinaryExpression",
                                    "start": 7972,
                                    "end": 8010,
                                    "loc": {
                                      "start": {
                                        "line": 169,
                                        "column": 66
                                      },
                                      "end": {
                                        "line": 169,
                                        "column": 104
                                      }
                                    },
                                    "left": {
                                      "type": "CallExpression",
                                      "start": 7972,
                                      "end": 8003,
                                      "loc": {
                                        "start": {
                                          "line": 169,
                                          "column": 66
                                        },
                                        "end": {
                                          "line": 169,
                                          "column": 97
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 7972,
                                        "end": 7998,
                                        "loc": {
                                          "start": {
                                            "line": 169,
                                            "column": 66
                                          },
                                          "end": {
                                            "line": 169,
                                            "column": 92
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 7972,
                                          "end": 7990,
                                          "loc": {
                                            "start": {
                                              "line": 169,
                                              "column": 66
                                            },
                                            "end": {
                                              "line": 169,
                                              "column": 84
                                            }
                                          },
                                          "name": "relatedConstraints"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 7991,
                                          "end": 7998,
                                          "loc": {
                                            "start": {
                                              "line": 169,
                                              "column": 85
                                            },
                                            "end": {
                                              "line": 169,
                                              "column": 92
                                            }
                                          },
                                          "name": "indexOf"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 7999,
                                          "end": 8002,
                                          "loc": {
                                            "start": {
                                              "line": 169,
                                              "column": 93
                                            },
                                            "end": {
                                              "line": 169,
                                              "column": 96
                                            }
                                          },
                                          "name": "obj"
                                        }
                                      ]
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "UnaryExpression",
                                      "start": 8008,
                                      "end": 8010,
                                      "loc": {
                                        "start": {
                                          "line": 169,
                                          "column": 102
                                        },
                                        "end": {
                                          "line": 169,
                                          "column": 104
                                        }
                                      },
                                      "operator": "-",
                                      "prefix": true,
                                      "argument": {
                                        "type": "Literal",
                                        "start": 8009,
                                        "end": 8010,
                                        "loc": {
                                          "start": {
                                            "line": 169,
                                            "column": 103
                                          },
                                          "end": {
                                            "line": 169,
                                            "column": 104
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      }
                                    }
                                  }
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 8023,
                      "end": 8126,
                      "loc": {
                        "start": {
                          "line": 170,
                          "column": 8
                        },
                        "end": {
                          "line": 170,
                          "column": 111
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 8023,
                        "end": 8125,
                        "loc": {
                          "start": {
                            "line": 170,
                            "column": 8
                          },
                          "end": {
                            "line": 170,
                            "column": 110
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 8023,
                          "end": 8032,
                          "loc": {
                            "start": {
                              "line": 170,
                              "column": 8
                            },
                            "end": {
                              "line": 170,
                              "column": 17
                            }
                          },
                          "name": "objectsCh"
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 8035,
                          "end": 8125,
                          "loc": {
                            "start": {
                              "line": 170,
                              "column": 20
                            },
                            "end": {
                              "line": 170,
                              "column": 110
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 8035,
                            "end": 8060,
                            "loc": {
                              "start": {
                                "line": 170,
                                "column": 20
                              },
                              "end": {
                                "line": 170,
                                "column": 45
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 8035,
                              "end": 8053,
                              "loc": {
                                "start": {
                                  "line": 170,
                                  "column": 20
                                },
                                "end": {
                                  "line": 170,
                                  "column": 38
                                }
                              },
                              "name": "relatedConstraints"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8054,
                              "end": 8060,
                              "loc": {
                                "start": {
                                  "line": 170,
                                  "column": 39
                                },
                                "end": {
                                  "line": 170,
                                  "column": 45
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 8061,
                              "end": 8124,
                              "loc": {
                                "start": {
                                  "line": 170,
                                  "column": 46
                                },
                                "end": {
                                  "line": 170,
                                  "column": 109
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 8061,
                                "end": 8077,
                                "loc": {
                                  "start": {
                                    "line": 170,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 170,
                                    "column": 62
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 8061,
                                  "end": 8070,
                                  "loc": {
                                    "start": {
                                      "line": 170,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 170,
                                      "column": 55
                                    }
                                  },
                                  "name": "objectsCh"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8071,
                                  "end": 8077,
                                  "loc": {
                                    "start": {
                                      "line": 170,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 170,
                                      "column": 62
                                    }
                                  },
                                  "name": "filter"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ArrowFunctionExpression",
                                  "start": 8078,
                                  "end": 8123,
                                  "loc": {
                                    "start": {
                                      "line": 170,
                                      "column": 63
                                    },
                                    "end": {
                                      "line": 170,
                                      "column": 108
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": true,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 8078,
                                      "end": 8081,
                                      "loc": {
                                        "start": {
                                          "line": 170,
                                          "column": 63
                                        },
                                        "end": {
                                          "line": 170,
                                          "column": 66
                                        }
                                      },
                                      "name": "obj"
                                    }
                                  ],
                                  "body": {
                                    "type": "BinaryExpression",
                                    "start": 8085,
                                    "end": 8123,
                                    "loc": {
                                      "start": {
                                        "line": 170,
                                        "column": 70
                                      },
                                      "end": {
                                        "line": 170,
                                        "column": 108
                                      }
                                    },
                                    "left": {
                                      "type": "CallExpression",
                                      "start": 8085,
                                      "end": 8116,
                                      "loc": {
                                        "start": {
                                          "line": 170,
                                          "column": 70
                                        },
                                        "end": {
                                          "line": 170,
                                          "column": 101
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 8085,
                                        "end": 8111,
                                        "loc": {
                                          "start": {
                                            "line": 170,
                                            "column": 70
                                          },
                                          "end": {
                                            "line": 170,
                                            "column": 96
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 8085,
                                          "end": 8103,
                                          "loc": {
                                            "start": {
                                              "line": 170,
                                              "column": 70
                                            },
                                            "end": {
                                              "line": 170,
                                              "column": 88
                                            }
                                          },
                                          "name": "relatedConstraints"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 8104,
                                          "end": 8111,
                                          "loc": {
                                            "start": {
                                              "line": 170,
                                              "column": 89
                                            },
                                            "end": {
                                              "line": 170,
                                              "column": 96
                                            }
                                          },
                                          "name": "indexOf"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 8112,
                                          "end": 8115,
                                          "loc": {
                                            "start": {
                                              "line": 170,
                                              "column": 97
                                            },
                                            "end": {
                                              "line": 170,
                                              "column": 100
                                            }
                                          },
                                          "name": "obj"
                                        }
                                      ]
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "UnaryExpression",
                                      "start": 8121,
                                      "end": 8123,
                                      "loc": {
                                        "start": {
                                          "line": 170,
                                          "column": 106
                                        },
                                        "end": {
                                          "line": 170,
                                          "column": 108
                                        }
                                      },
                                      "operator": "-",
                                      "prefix": true,
                                      "argument": {
                                        "type": "Literal",
                                        "start": 8122,
                                        "end": 8123,
                                        "loc": {
                                          "start": {
                                            "line": 170,
                                            "column": 107
                                          },
                                          "end": {
                                            "line": 170,
                                            "column": 108
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      }
                                    }
                                  }
                                }
                              ]
                            }
                          ]
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " remove objects from the sketch on the server and, if successful, on the client",
                          "start": 8138,
                          "end": 8219,
                          "loc": {
                            "start": {
                              "line": 172,
                              "column": 8
                            },
                            "end": {
                              "line": 172,
                              "column": 89
                            }
                          },
                          "range": [
                            8138,
                            8219
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 8229,
                      "end": 8524,
                      "loc": {
                        "start": {
                          "line": 173,
                          "column": 8
                        },
                        "end": {
                          "line": 178,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 8233,
                        "end": 8249,
                        "loc": {
                          "start": {
                            "line": 173,
                            "column": 12
                          },
                          "end": {
                            "line": 173,
                            "column": 28
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 8233,
                          "end": 8240,
                          "loc": {
                            "start": {
                              "line": 173,
                              "column": 12
                            },
                            "end": {
                              "line": 173,
                              "column": 19
                            }
                          },
                          "name": "options",
                          "leadingComments": null
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 8241,
                          "end": 8249,
                          "loc": {
                            "start": {
                              "line": 173,
                              "column": 20
                            },
                            "end": {
                              "line": 173,
                              "column": 28
                            }
                          },
                          "name": "onServer"
                        },
                        "computed": false,
                        "leadingComments": null
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 8251,
                        "end": 8524,
                        "loc": {
                          "start": {
                            "line": 173,
                            "column": 30
                          },
                          "end": {
                            "line": 178,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 8266,
                            "end": 8343,
                            "loc": {
                              "start": {
                                "line": 174,
                                "column": 12
                              },
                              "end": {
                                "line": 174,
                                "column": 89
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 8272,
                                "end": 8342,
                                "loc": {
                                  "start": {
                                    "line": 174,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 174,
                                    "column": 88
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 8272,
                                  "end": 8282,
                                  "loc": {
                                    "start": {
                                      "line": 174,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 174,
                                      "column": 28
                                    }
                                  },
                                  "name": "statements"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 8285,
                                  "end": 8342,
                                  "loc": {
                                    "start": {
                                      "line": 174,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 174,
                                      "column": 88
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 8285,
                                    "end": 8296,
                                    "loc": {
                                      "start": {
                                        "line": 174,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 174,
                                        "column": 42
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 8285,
                                      "end": 8292,
                                      "loc": {
                                        "start": {
                                          "line": 174,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 174,
                                          "column": 38
                                        }
                                      },
                                      "name": "objects"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8293,
                                      "end": 8296,
                                      "loc": {
                                        "start": {
                                          "line": 174,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 174,
                                          "column": 42
                                        }
                                      },
                                      "name": "map"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "ArrowFunctionExpression",
                                      "start": 8297,
                                      "end": 8341,
                                      "loc": {
                                        "start": {
                                          "line": 174,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 174,
                                          "column": 87
                                        }
                                      },
                                      "id": null,
                                      "generator": false,
                                      "expression": true,
                                      "async": false,
                                      "params": [
                                        {
                                          "type": "Identifier",
                                          "start": 8297,
                                          "end": 8303,
                                          "loc": {
                                            "start": {
                                              "line": 174,
                                              "column": 43
                                            },
                                            "end": {
                                              "line": 174,
                                              "column": 49
                                            }
                                          },
                                          "name": "object"
                                        }
                                      ],
                                      "body": {
                                        "type": "CallExpression",
                                        "start": 8307,
                                        "end": 8341,
                                        "loc": {
                                          "start": {
                                            "line": 174,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 174,
                                            "column": 87
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 8307,
                                          "end": 8335,
                                          "loc": {
                                            "start": {
                                              "line": 174,
                                              "column": 53
                                            },
                                            "end": {
                                              "line": 174,
                                              "column": 81
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 8307,
                                            "end": 8313,
                                            "loc": {
                                              "start": {
                                                "line": 174,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 174,
                                                "column": 59
                                              }
                                            },
                                            "name": "object"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 8314,
                                            "end": 8335,
                                            "loc": {
                                              "start": {
                                                "line": 174,
                                                "column": 60
                                              },
                                              "end": {
                                                "line": 174,
                                                "column": 81
                                              }
                                            },
                                            "name": "prepareRemoveOnServer"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 8336,
                                            "end": 8340,
                                            "loc": {
                                              "start": {
                                                "line": 174,
                                                "column": 82
                                              },
                                              "end": {
                                                "line": 174,
                                                "column": 86
                                              }
                                            }
                                          }
                                        ]
                                      }
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "const"
                          },
                          {
                            "type": "IfStatement",
                            "start": 8357,
                            "end": 8441,
                            "loc": {
                              "start": {
                                "line": 175,
                                "column": 12
                              },
                              "end": {
                                "line": 176,
                                "column": 57
                              }
                            },
                            "test": {
                              "type": "MemberExpression",
                              "start": 8361,
                              "end": 8381,
                              "loc": {
                                "start": {
                                  "line": 175,
                                  "column": 16
                                },
                                "end": {
                                  "line": 175,
                                  "column": 36
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 8361,
                                "end": 8368,
                                "loc": {
                                  "start": {
                                    "line": 175,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 175,
                                    "column": 23
                                  }
                                },
                                "name": "options"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8369,
                                "end": 8381,
                                "loc": {
                                  "start": {
                                    "line": 175,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 175,
                                    "column": 36
                                  }
                                },
                                "name": "updateSketch"
                              },
                              "computed": false
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 8400,
                              "end": 8441,
                              "loc": {
                                "start": {
                                  "line": 176,
                                  "column": 16
                                },
                                "end": {
                                  "line": 176,
                                  "column": 57
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 8400,
                                "end": 8440,
                                "loc": {
                                  "start": {
                                    "line": 176,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 176,
                                    "column": 56
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 8400,
                                  "end": 8415,
                                  "loc": {
                                    "start": {
                                      "line": 176,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 176,
                                      "column": 31
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 8400,
                                    "end": 8410,
                                    "loc": {
                                      "start": {
                                        "line": 176,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 176,
                                        "column": 26
                                      }
                                    },
                                    "name": "statements"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8411,
                                    "end": 8415,
                                    "loc": {
                                      "start": {
                                        "line": 176,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 176,
                                        "column": 31
                                      }
                                    },
                                    "name": "push"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "CallExpression",
                                    "start": 8416,
                                    "end": 8439,
                                    "loc": {
                                      "start": {
                                        "line": 176,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 176,
                                        "column": 55
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 8416,
                                      "end": 8437,
                                      "loc": {
                                        "start": {
                                          "line": 176,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 176,
                                          "column": 53
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 8416,
                                        "end": 8420,
                                        "loc": {
                                          "start": {
                                            "line": 176,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 176,
                                            "column": 36
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8421,
                                        "end": 8437,
                                        "loc": {
                                          "start": {
                                            "line": 176,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 176,
                                            "column": 53
                                          }
                                        },
                                        "name": "updateFromServer"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 8455,
                            "end": 8513,
                            "loc": {
                              "start": {
                                "line": 177,
                                "column": 12
                              },
                              "end": {
                                "line": 177,
                                "column": 70
                              }
                            },
                            "expression": {
                              "type": "AwaitExpression",
                              "start": 8455,
                              "end": 8512,
                              "loc": {
                                "start": {
                                  "line": 177,
                                  "column": 12
                                },
                                "end": {
                                  "line": 177,
                                  "column": 69
                                }
                              },
                              "all": false,
                              "argument": {
                                "type": "CallExpression",
                                "start": 8461,
                                "end": 8512,
                                "loc": {
                                  "start": {
                                    "line": 177,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 177,
                                    "column": 69
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 8461,
                                  "end": 8495,
                                  "loc": {
                                    "start": {
                                      "line": 177,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 177,
                                      "column": 52
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 8461,
                                    "end": 8487,
                                    "loc": {
                                      "start": {
                                        "line": 177,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 177,
                                        "column": 44
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 8461,
                                      "end": 8475,
                                      "loc": {
                                        "start": {
                                          "line": 177,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 177,
                                          "column": 32
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 8461,
                                        "end": 8471,
                                        "loc": {
                                          "start": {
                                            "line": 177,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 177,
                                            "column": 28
                                          }
                                        },
                                        "name": "Statements"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8472,
                                        "end": 8475,
                                        "loc": {
                                          "start": {
                                            "line": 177,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 177,
                                            "column": 32
                                          }
                                        },
                                        "name": "all"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 8476,
                                        "end": 8486,
                                        "loc": {
                                          "start": {
                                            "line": 177,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 177,
                                            "column": 43
                                          }
                                        },
                                        "name": "statements"
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8488,
                                    "end": 8495,
                                    "loc": {
                                      "start": {
                                        "line": 177,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 177,
                                        "column": 52
                                      }
                                    },
                                    "name": "execute"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "start": 8496,
                                    "end": 8511,
                                    "loc": {
                                      "start": {
                                        "line": 177,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 177,
                                        "column": 68
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 8496,
                                      "end": 8504,
                                      "loc": {
                                        "start": {
                                          "line": 177,
                                          "column": 53
                                        },
                                        "end": {
                                          "line": 177,
                                          "column": 61
                                        }
                                      },
                                      "name": "sketcher"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8505,
                                      "end": 8511,
                                      "loc": {
                                        "start": {
                                          "line": 177,
                                          "column": 62
                                        },
                                        "end": {
                                          "line": 177,
                                          "column": 68
                                        }
                                      },
                                      "name": "socket"
                                    },
                                    "computed": false
                                  }
                                ]
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null,
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " remove objects from the sketch on the server and, if successful, on the client",
                          "start": 8138,
                          "end": 8219,
                          "loc": {
                            "start": {
                              "line": 172,
                              "column": 8
                            },
                            "end": {
                              "line": 172,
                              "column": 89
                            }
                          },
                          "range": [
                            8138,
                            8219
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 8536,
                      "end": 8812,
                      "loc": {
                        "start": {
                          "line": 180,
                          "column": 8
                        },
                        "end": {
                          "line": 187,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 8540,
                        "end": 8556,
                        "loc": {
                          "start": {
                            "line": 180,
                            "column": 12
                          },
                          "end": {
                            "line": 180,
                            "column": 28
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 8540,
                          "end": 8547,
                          "loc": {
                            "start": {
                              "line": 180,
                              "column": 12
                            },
                            "end": {
                              "line": 180,
                              "column": 19
                            }
                          },
                          "name": "options"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 8548,
                          "end": 8556,
                          "loc": {
                            "start": {
                              "line": 180,
                              "column": 20
                            },
                            "end": {
                              "line": 180,
                              "column": 28
                            }
                          },
                          "name": "onClient"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 8558,
                        "end": 8812,
                        "loc": {
                          "start": {
                            "line": 180,
                            "column": 30
                          },
                          "end": {
                            "line": 187,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ForOfStatement",
                            "start": 8573,
                            "end": 8801,
                            "loc": {
                              "start": {
                                "line": 181,
                                "column": 12
                              },
                              "end": {
                                "line": 186,
                                "column": 13
                              }
                            },
                            "left": {
                              "type": "VariableDeclaration",
                              "start": 8578,
                              "end": 8585,
                              "loc": {
                                "start": {
                                  "line": 181,
                                  "column": 17
                                },
                                "end": {
                                  "line": 181,
                                  "column": 24
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 8582,
                                  "end": 8585,
                                  "loc": {
                                    "start": {
                                      "line": 181,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 181,
                                      "column": 24
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 8582,
                                    "end": 8585,
                                    "loc": {
                                      "start": {
                                        "line": 181,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 181,
                                        "column": 24
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  "init": null
                                }
                              ],
                              "kind": "let"
                            },
                            "right": {
                              "type": "Identifier",
                              "start": 8589,
                              "end": 8596,
                              "loc": {
                                "start": {
                                  "line": 181,
                                  "column": 28
                                },
                                "end": {
                                  "line": 181,
                                  "column": 35
                                }
                              },
                              "name": "objects"
                            },
                            "body": {
                              "type": "BlockStatement",
                              "start": 8598,
                              "end": 8801,
                              "loc": {
                                "start": {
                                  "line": 181,
                                  "column": 37
                                },
                                "end": {
                                  "line": 186,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 8617,
                                  "end": 8634,
                                  "loc": {
                                    "start": {
                                      "line": 182,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 182,
                                      "column": 33
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 8617,
                                    "end": 8633,
                                    "loc": {
                                      "start": {
                                        "line": 182,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 182,
                                        "column": 32
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 8617,
                                      "end": 8628,
                                      "loc": {
                                        "start": {
                                          "line": 182,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 182,
                                          "column": 27
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 8617,
                                        "end": 8621,
                                        "loc": {
                                          "start": {
                                            "line": 182,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 182,
                                            "column": 20
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8622,
                                        "end": 8628,
                                        "loc": {
                                          "start": {
                                            "line": 182,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 182,
                                            "column": 27
                                          }
                                        },
                                        "name": "remove"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 8629,
                                        "end": 8632,
                                        "loc": {
                                          "start": {
                                            "line": 182,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 182,
                                            "column": 31
                                          }
                                        },
                                        "name": "obj"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 8652,
                                  "end": 8690,
                                  "loc": {
                                    "start": {
                                      "line": 183,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 183,
                                      "column": 54
                                    }
                                  },
                                  "expression": {
                                    "type": "AwaitExpression",
                                    "start": 8652,
                                    "end": 8689,
                                    "loc": {
                                      "start": {
                                        "line": 183,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 183,
                                        "column": 53
                                      }
                                    },
                                    "all": false,
                                    "argument": {
                                      "type": "CallExpression",
                                      "start": 8658,
                                      "end": 8689,
                                      "loc": {
                                        "start": {
                                          "line": 183,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 183,
                                          "column": 53
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 8658,
                                        "end": 8667,
                                        "loc": {
                                          "start": {
                                            "line": 183,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 183,
                                            "column": 31
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 8658,
                                          "end": 8662,
                                          "loc": {
                                            "start": {
                                              "line": 183,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 183,
                                              "column": 26
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 8663,
                                          "end": 8667,
                                          "loc": {
                                            "start": {
                                              "line": 183,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 183,
                                              "column": 31
                                            }
                                          },
                                          "name": "emit"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Literal",
                                          "start": 8668,
                                          "end": 8683,
                                          "loc": {
                                            "start": {
                                              "line": 183,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 183,
                                              "column": 47
                                            }
                                          },
                                          "value": "SketchRemoved",
                                          "rawValue": "SketchRemoved",
                                          "raw": "'SketchRemoved'"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 8685,
                                          "end": 8688,
                                          "loc": {
                                            "start": {
                                              "line": 183,
                                              "column": 49
                                            },
                                            "end": {
                                              "line": 183,
                                              "column": 52
                                            }
                                          },
                                          "name": "obj"
                                        }
                                      ]
                                    }
                                  },
                                  "trailingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": "note: removed object is completely destroyed",
                                      "start": 8708,
                                      "end": 8754,
                                      "loc": {
                                        "start": {
                                          "line": 184,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 184,
                                          "column": 62
                                        }
                                      },
                                      "range": [
                                        8708,
                                        8754
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 8772,
                                  "end": 8786,
                                  "loc": {
                                    "start": {
                                      "line": 185,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 185,
                                      "column": 30
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 8772,
                                    "end": 8785,
                                    "loc": {
                                      "start": {
                                        "line": 185,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 185,
                                        "column": 29
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 8772,
                                      "end": 8783,
                                      "loc": {
                                        "start": {
                                          "line": 185,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 185,
                                          "column": 27
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 8772,
                                        "end": 8775,
                                        "loc": {
                                          "start": {
                                            "line": 185,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 185,
                                            "column": 19
                                          }
                                        },
                                        "name": "obj",
                                        "leadingComments": null
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8776,
                                        "end": 8783,
                                        "loc": {
                                          "start": {
                                            "line": 185,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 185,
                                            "column": 27
                                          }
                                        },
                                        "name": "destroy"
                                      },
                                      "computed": false,
                                      "leadingComments": null
                                    },
                                    "arguments": [],
                                    "leadingComments": null
                                  },
                                  "leadingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": "note: removed object is completely destroyed",
                                      "start": 8708,
                                      "end": 8754,
                                      "loc": {
                                        "start": {
                                          "line": 184,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 184,
                                          "column": 62
                                        }
                                      },
                                      "range": [
                                        8708,
                                        8754
                                      ]
                                    }
                                  ]
                                }
                              ]
                            }
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "ForOfStatement",
                      "start": 8822,
                      "end": 8891,
                      "loc": {
                        "start": {
                          "line": 188,
                          "column": 8
                        },
                        "end": {
                          "line": 189,
                          "column": 43
                        }
                      },
                      "left": {
                        "type": "VariableDeclaration",
                        "start": 8827,
                        "end": 8834,
                        "loc": {
                          "start": {
                            "line": 188,
                            "column": 13
                          },
                          "end": {
                            "line": 188,
                            "column": 20
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 8831,
                            "end": 8834,
                            "loc": {
                              "start": {
                                "line": 188,
                                "column": 17
                              },
                              "end": {
                                "line": 188,
                                "column": 20
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 8831,
                              "end": 8834,
                              "loc": {
                                "start": {
                                  "line": 188,
                                  "column": 17
                                },
                                "end": {
                                  "line": 188,
                                  "column": 20
                                }
                              },
                              "name": "obj"
                            },
                            "init": null
                          }
                        ],
                        "kind": "let"
                      },
                      "right": {
                        "type": "Identifier",
                        "start": 8838,
                        "end": 8845,
                        "loc": {
                          "start": {
                            "line": 188,
                            "column": 24
                          },
                          "end": {
                            "line": 188,
                            "column": 31
                          }
                        },
                        "name": "objects"
                      },
                      "body": {
                        "type": "ExpressionStatement",
                        "start": 8860,
                        "end": 8891,
                        "loc": {
                          "start": {
                            "line": 189,
                            "column": 12
                          },
                          "end": {
                            "line": 189,
                            "column": 43
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 8860,
                          "end": 8890,
                          "loc": {
                            "start": {
                              "line": 189,
                              "column": 12
                            },
                            "end": {
                              "line": 189,
                              "column": 42
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 8860,
                            "end": 8885,
                            "loc": {
                              "start": {
                                "line": 189,
                                "column": 12
                              },
                              "end": {
                                "line": 189,
                                "column": 37
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 8860,
                              "end": 8878,
                              "loc": {
                                "start": {
                                  "line": 189,
                                  "column": 12
                                },
                                "end": {
                                  "line": 189,
                                  "column": 30
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 8860,
                                "end": 8864,
                                "loc": {
                                  "start": {
                                    "line": 189,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 189,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8865,
                                "end": 8878,
                                "loc": {
                                  "start": {
                                    "line": 189,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 189,
                                    "column": 30
                                  }
                                },
                                "name": "sketchObjects"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8879,
                              "end": 8885,
                              "loc": {
                                "start": {
                                  "line": 189,
                                  "column": 31
                                },
                                "end": {
                                  "line": 189,
                                  "column": 37
                                }
                              },
                              "name": "delete"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 8886,
                              "end": 8889,
                              "loc": {
                                "start": {
                                  "line": 189,
                                  "column": 38
                                },
                                "end": {
                                  "line": 189,
                                  "column": 41
                                }
                              },
                              "name": "obj"
                            }
                          ]
                        }
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Remove objects previously added with addToSketch",
                  "start": 7261,
                  "end": 7312,
                  "loc": {
                    "start": {
                      "line": 156,
                      "column": 4
                    },
                    "end": {
                      "line": 156,
                      "column": 55
                    }
                  },
                  "range": [
                    7261,
                    7312
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Duplicate objects",
                  "start": 8906,
                  "end": 8926,
                  "loc": {
                    "start": {
                      "line": 192,
                      "column": 4
                    },
                    "end": {
                      "line": 192,
                      "column": 24
                    }
                  },
                  "range": [
                    8906,
                    8926
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 8932,
              "end": 9311,
              "loc": {
                "start": {
                  "line": 193,
                  "column": 4
                },
                "end": {
                  "line": 198,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 8932,
                "end": 8943,
                "loc": {
                  "start": {
                    "line": 193,
                    "column": 4
                  },
                  "end": {
                    "line": 193,
                    "column": 15
                  }
                },
                "name": "copyObjects",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 8943,
                "end": 9311,
                "loc": {
                  "start": {
                    "line": 193,
                    "column": 15
                  },
                  "end": {
                    "line": 198,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 8944,
                    "end": 8951,
                    "loc": {
                      "start": {
                        "line": 193,
                        "column": 16
                      },
                      "end": {
                        "line": 193,
                        "column": 23
                      }
                    },
                    "name": "objects"
                  },
                  {
                    "type": "Identifier",
                    "start": 8953,
                    "end": 8962,
                    "loc": {
                      "start": {
                        "line": 193,
                        "column": 25
                      },
                      "end": {
                        "line": 193,
                        "column": 34
                      }
                    },
                    "name": "translate"
                  },
                  {
                    "type": "Identifier",
                    "start": 8964,
                    "end": 8970,
                    "loc": {
                      "start": {
                        "line": 193,
                        "column": 36
                      },
                      "end": {
                        "line": 193,
                        "column": 42
                      }
                    },
                    "name": "rotate"
                  },
                  {
                    "type": "AssignmentPattern",
                    "start": 8972,
                    "end": 8984,
                    "loc": {
                      "start": {
                        "line": 193,
                        "column": 44
                      },
                      "end": {
                        "line": 193,
                        "column": 56
                      }
                    },
                    "operator": "=",
                    "left": {
                      "type": "Identifier",
                      "start": 8972,
                      "end": 8979,
                      "loc": {
                        "start": {
                          "line": 193,
                          "column": 44
                        },
                        "end": {
                          "line": 193,
                          "column": 51
                        }
                      },
                      "name": "options"
                    },
                    "right": {
                      "type": "ObjectExpression",
                      "start": 8982,
                      "end": 8984,
                      "loc": {
                        "start": {
                          "line": 193,
                          "column": 54
                        },
                        "end": {
                          "line": 193,
                          "column": 56
                        }
                      },
                      "properties": []
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 8986,
                  "end": 9311,
                  "loc": {
                    "start": {
                      "line": 193,
                      "column": 58
                    },
                    "end": {
                      "line": 198,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 8997,
                      "end": 9090,
                      "loc": {
                        "start": {
                          "line": 194,
                          "column": 8
                        },
                        "end": {
                          "line": 194,
                          "column": 101
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9003,
                          "end": 9089,
                          "loc": {
                            "start": {
                              "line": 194,
                              "column": 14
                            },
                            "end": {
                              "line": 194,
                              "column": 100
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9003,
                            "end": 9012,
                            "loc": {
                              "start": {
                                "line": 194,
                                "column": 14
                              },
                              "end": {
                                "line": 194,
                                "column": 23
                              }
                            },
                            "name": "statement"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 9015,
                            "end": 9089,
                            "loc": {
                              "start": {
                                "line": 194,
                                "column": 26
                              },
                              "end": {
                                "line": 194,
                                "column": 100
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 9015,
                              "end": 9031,
                              "loc": {
                                "start": {
                                  "line": 194,
                                  "column": 26
                                },
                                "end": {
                                  "line": 194,
                                  "column": 42
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 9015,
                                "end": 9024,
                                "loc": {
                                  "start": {
                                    "line": 194,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 194,
                                    "column": 35
                                  }
                                },
                                "name": "Statement"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9025,
                                "end": 9031,
                                "loc": {
                                  "start": {
                                    "line": 194,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 194,
                                    "column": 42
                                  }
                                },
                                "name": "Return"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 9032,
                                "end": 9088,
                                "loc": {
                                  "start": {
                                    "line": 194,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 194,
                                    "column": 99
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 9032,
                                  "end": 9054,
                                  "loc": {
                                    "start": {
                                      "line": 194,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 194,
                                      "column": 65
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 9032,
                                    "end": 9042,
                                    "loc": {
                                      "start": {
                                        "line": 194,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 194,
                                        "column": 53
                                      }
                                    },
                                    "name": "Expression"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9043,
                                    "end": 9054,
                                    "loc": {
                                      "start": {
                                        "line": 194,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 194,
                                        "column": 65
                                      }
                                    },
                                    "name": "CopyObjects"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "ThisExpression",
                                    "start": 9055,
                                    "end": 9059,
                                    "loc": {
                                      "start": {
                                        "line": 194,
                                        "column": 66
                                      },
                                      "end": {
                                        "line": 194,
                                        "column": 70
                                      }
                                    }
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 9061,
                                    "end": 9068,
                                    "loc": {
                                      "start": {
                                        "line": 194,
                                        "column": 72
                                      },
                                      "end": {
                                        "line": 194,
                                        "column": 79
                                      }
                                    },
                                    "name": "objects"
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 9070,
                                    "end": 9079,
                                    "loc": {
                                      "start": {
                                        "line": 194,
                                        "column": 81
                                      },
                                      "end": {
                                        "line": 194,
                                        "column": 90
                                      }
                                    },
                                    "name": "translate"
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 9081,
                                    "end": 9087,
                                    "loc": {
                                      "start": {
                                        "line": 194,
                                        "column": 92
                                      },
                                      "end": {
                                        "line": 194,
                                        "column": 98
                                      }
                                    },
                                    "name": "rotate"
                                  }
                                ]
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "const",
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " TODO: parsing objects returned from DuplicateObjects would be more efficient than",
                          "start": 9100,
                          "end": 9184,
                          "loc": {
                            "start": {
                              "line": 195,
                              "column": 8
                            },
                            "end": {
                              "line": 195,
                              "column": 92
                            }
                          },
                          "range": [
                            9100,
                            9184
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " updating the whole sketch",
                          "start": 9194,
                          "end": 9222,
                          "loc": {
                            "start": {
                              "line": 196,
                              "column": 8
                            },
                            "end": {
                              "line": 196,
                              "column": 36
                            }
                          },
                          "range": [
                            9194,
                            9222
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 9232,
                      "end": 9304,
                      "loc": {
                        "start": {
                          "line": 197,
                          "column": 8
                        },
                        "end": {
                          "line": 197,
                          "column": 80
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 9239,
                        "end": 9303,
                        "loc": {
                          "start": {
                            "line": 197,
                            "column": 15
                          },
                          "end": {
                            "line": 197,
                            "column": 79
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 9239,
                          "end": 9282,
                          "loc": {
                            "start": {
                              "line": 197,
                              "column": 15
                            },
                            "end": {
                              "line": 197,
                              "column": 58
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 9239,
                            "end": 9277,
                            "loc": {
                              "start": {
                                "line": 197,
                                "column": 15
                              },
                              "end": {
                                "line": 197,
                                "column": 53
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 9239,
                              "end": 9252,
                              "loc": {
                                "start": {
                                  "line": 197,
                                  "column": 15
                                },
                                "end": {
                                  "line": 197,
                                  "column": 28
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 9239,
                                "end": 9248,
                                "loc": {
                                  "start": {
                                    "line": 197,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 197,
                                    "column": 24
                                  }
                                },
                                "name": "statement",
                                "leadingComments": null
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9249,
                                "end": 9252,
                                "loc": {
                                  "start": {
                                    "line": 197,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 197,
                                    "column": 28
                                  }
                                },
                                "name": "and"
                              },
                              "computed": false,
                              "leadingComments": null
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 9253,
                                "end": 9276,
                                "loc": {
                                  "start": {
                                    "line": 197,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 197,
                                    "column": 52
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 9253,
                                  "end": 9274,
                                  "loc": {
                                    "start": {
                                      "line": 197,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 197,
                                      "column": 50
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 9253,
                                    "end": 9257,
                                    "loc": {
                                      "start": {
                                        "line": 197,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 197,
                                        "column": 33
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9258,
                                    "end": 9274,
                                    "loc": {
                                      "start": {
                                        "line": 197,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 197,
                                        "column": 50
                                      }
                                    },
                                    "name": "updateFromServer"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              }
                            ],
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9278,
                            "end": 9282,
                            "loc": {
                              "start": {
                                "line": 197,
                                "column": 54
                              },
                              "end": {
                                "line": 197,
                                "column": 58
                              }
                            },
                            "name": "then"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 9283,
                            "end": 9302,
                            "loc": {
                              "start": {
                                "line": 197,
                                "column": 59
                              },
                              "end": {
                                "line": 197,
                                "column": 78
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 9283,
                                "end": 9284,
                                "loc": {
                                  "start": {
                                    "line": 197,
                                    "column": 59
                                  },
                                  "end": {
                                    "line": 197,
                                    "column": 60
                                  }
                                },
                                "name": "x"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 9288,
                              "end": 9302,
                              "loc": {
                                "start": {
                                  "line": 197,
                                  "column": 64
                                },
                                "end": {
                                  "line": 197,
                                  "column": 78
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 9288,
                                "end": 9299,
                                "loc": {
                                  "start": {
                                    "line": 197,
                                    "column": 64
                                  },
                                  "end": {
                                    "line": 197,
                                    "column": 75
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 9288,
                                  "end": 9295,
                                  "loc": {
                                    "start": {
                                      "line": 197,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 197,
                                      "column": 71
                                    }
                                  },
                                  "name": "console"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9296,
                                  "end": 9299,
                                  "loc": {
                                    "start": {
                                      "line": 197,
                                      "column": 72
                                    },
                                    "end": {
                                      "line": 197,
                                      "column": 75
                                    }
                                  },
                                  "name": "log"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 9300,
                                  "end": 9301,
                                  "loc": {
                                    "start": {
                                      "line": 197,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 197,
                                      "column": 77
                                    }
                                  },
                                  "name": "x"
                                }
                              ]
                            }
                          }
                        ],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " TODO: parsing objects returned from DuplicateObjects would be more efficient than",
                          "start": 9100,
                          "end": 9184,
                          "loc": {
                            "start": {
                              "line": 195,
                              "column": 8
                            },
                            "end": {
                              "line": 195,
                              "column": 92
                            }
                          },
                          "range": [
                            9100,
                            9184
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " updating the whole sketch",
                          "start": 9194,
                          "end": 9222,
                          "loc": {
                            "start": {
                              "line": 196,
                              "column": 8
                            },
                            "end": {
                              "line": 196,
                              "column": 36
                            }
                          },
                          "range": [
                            9194,
                            9222
                          ]
                        }
                      ]
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Duplicate objects",
                  "start": 8906,
                  "end": 8926,
                  "loc": {
                    "start": {
                      "line": 192,
                      "column": 4
                    },
                    "end": {
                      "line": 192,
                      "column": 24
                    }
                  },
                  "range": [
                    8906,
                    8926
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return list of objects added with addToSketch (but not addAuxObject)",
                  "start": 9319,
                  "end": 9390,
                  "loc": {
                    "start": {
                      "line": 200,
                      "column": 4
                    },
                    "end": {
                      "line": 200,
                      "column": 75
                    }
                  },
                  "range": [
                    9319,
                    9390
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 9396,
              "end": 9495,
              "loc": {
                "start": {
                  "line": 201,
                  "column": 4
                },
                "end": {
                  "line": 203,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 9396,
                "end": 9414,
                "loc": {
                  "start": {
                    "line": 201,
                    "column": 4
                  },
                  "end": {
                    "line": 201,
                    "column": 22
                  }
                },
                "name": "getObjectsOnSketch",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 9414,
                "end": 9495,
                "loc": {
                  "start": {
                    "line": 201,
                    "column": 22
                  },
                  "end": {
                    "line": 203,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 9417,
                  "end": 9495,
                  "loc": {
                    "start": {
                      "line": 201,
                      "column": 25
                    },
                    "end": {
                      "line": 203,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 9428,
                      "end": 9488,
                      "loc": {
                        "start": {
                          "line": 202,
                          "column": 8
                        },
                        "end": {
                          "line": 202,
                          "column": 68
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 9435,
                        "end": 9487,
                        "loc": {
                          "start": {
                            "line": 202,
                            "column": 15
                          },
                          "end": {
                            "line": 202,
                            "column": 67
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 9435,
                          "end": 9455,
                          "loc": {
                            "start": {
                              "line": 202,
                              "column": 15
                            },
                            "end": {
                              "line": 202,
                              "column": 35
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 9435,
                            "end": 9448,
                            "loc": {
                              "start": {
                                "line": 202,
                                "column": 15
                              },
                              "end": {
                                "line": 202,
                                "column": 28
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 9435,
                              "end": 9439,
                              "loc": {
                                "start": {
                                  "line": 202,
                                  "column": 15
                                },
                                "end": {
                                  "line": 202,
                                  "column": 19
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9440,
                              "end": 9448,
                              "loc": {
                                "start": {
                                  "line": 202,
                                  "column": 20
                                },
                                "end": {
                                  "line": 202,
                                  "column": 28
                                }
                              },
                              "name": "children"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9449,
                            "end": 9455,
                            "loc": {
                              "start": {
                                "line": 202,
                                "column": 29
                              },
                              "end": {
                                "line": 202,
                                "column": 35
                              }
                            },
                            "name": "filter"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 9456,
                            "end": 9486,
                            "loc": {
                              "start": {
                                "line": 202,
                                "column": 36
                              },
                              "end": {
                                "line": 202,
                                "column": 66
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 9456,
                                "end": 9457,
                                "loc": {
                                  "start": {
                                    "line": 202,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 202,
                                    "column": 37
                                  }
                                },
                                "name": "c"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 9461,
                              "end": 9486,
                              "loc": {
                                "start": {
                                  "line": 202,
                                  "column": 41
                                },
                                "end": {
                                  "line": 202,
                                  "column": 66
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 9461,
                                "end": 9483,
                                "loc": {
                                  "start": {
                                    "line": 202,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 202,
                                    "column": 63
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 9461,
                                  "end": 9479,
                                  "loc": {
                                    "start": {
                                      "line": 202,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 202,
                                      "column": 59
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 9461,
                                    "end": 9465,
                                    "loc": {
                                      "start": {
                                        "line": 202,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 202,
                                        "column": 45
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9466,
                                    "end": 9479,
                                    "loc": {
                                      "start": {
                                        "line": 202,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 202,
                                        "column": 59
                                      }
                                    },
                                    "name": "sketchObjects"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9480,
                                  "end": 9483,
                                  "loc": {
                                    "start": {
                                      "line": 202,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 202,
                                      "column": 63
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 9484,
                                  "end": 9485,
                                  "loc": {
                                    "start": {
                                      "line": 202,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 202,
                                      "column": 65
                                    }
                                  },
                                  "name": "c"
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return list of objects added with addToSketch (but not addAuxObject)",
                  "start": 9319,
                  "end": 9390,
                  "loc": {
                    "start": {
                      "line": 200,
                      "column": 4
                    },
                    "end": {
                      "line": 200,
                      "column": 75
                    }
                  },
                  "range": [
                    9319,
                    9390
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return list of constraints related to passed object or objects,",
                  "start": 9503,
                  "end": 9569,
                  "loc": {
                    "start": {
                      "line": 205,
                      "column": 4
                    },
                    "end": {
                      "line": 205,
                      "column": 70
                    }
                  },
                  "range": [
                    9503,
                    9569
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " or list of all constraints, if 'objects' parameter is undefined",
                  "start": 9575,
                  "end": 9641,
                  "loc": {
                    "start": {
                      "line": 206,
                      "column": 4
                    },
                    "end": {
                      "line": 206,
                      "column": 70
                    }
                  },
                  "range": [
                    9575,
                    9641
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 9647,
              "end": 10094,
              "loc": {
                "start": {
                  "line": 207,
                  "column": 4
                },
                "end": {
                  "line": 217,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 9647,
                "end": 9669,
                "loc": {
                  "start": {
                    "line": 207,
                    "column": 4
                  },
                  "end": {
                    "line": 207,
                    "column": 26
                  }
                },
                "name": "getConstraintsOnSketch",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 9669,
                "end": 10094,
                "loc": {
                  "start": {
                    "line": 207,
                    "column": 26
                  },
                  "end": {
                    "line": 217,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 9670,
                    "end": 9677,
                    "loc": {
                      "start": {
                        "line": 207,
                        "column": 27
                      },
                      "end": {
                        "line": 207,
                        "column": 34
                      }
                    },
                    "name": "objects"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 9679,
                  "end": 10094,
                  "loc": {
                    "start": {
                      "line": 207,
                      "column": 36
                    },
                    "end": {
                      "line": 217,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 9690,
                      "end": 9732,
                      "loc": {
                        "start": {
                          "line": 208,
                          "column": 8
                        },
                        "end": {
                          "line": 208,
                          "column": 50
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 9694,
                        "end": 9701,
                        "loc": {
                          "start": {
                            "line": 208,
                            "column": 12
                          },
                          "end": {
                            "line": 208,
                            "column": 19
                          }
                        },
                        "name": "objects"
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 9703,
                        "end": 9732,
                        "loc": {
                          "start": {
                            "line": 208,
                            "column": 21
                          },
                          "end": {
                            "line": 208,
                            "column": 50
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 9703,
                          "end": 9731,
                          "loc": {
                            "start": {
                              "line": 208,
                              "column": 21
                            },
                            "end": {
                              "line": 208,
                              "column": 49
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 9703,
                            "end": 9710,
                            "loc": {
                              "start": {
                                "line": 208,
                                "column": 21
                              },
                              "end": {
                                "line": 208,
                                "column": 28
                              }
                            },
                            "name": "objects"
                          },
                          "right": {
                            "type": "CallExpression",
                            "start": 9713,
                            "end": 9731,
                            "loc": {
                              "start": {
                                "line": 208,
                                "column": 31
                              },
                              "end": {
                                "line": 208,
                                "column": 49
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 9713,
                              "end": 9722,
                              "loc": {
                                "start": {
                                  "line": 208,
                                  "column": 31
                                },
                                "end": {
                                  "line": 208,
                                  "column": 40
                                }
                              },
                              "object": {
                                "type": "ArrayExpression",
                                "start": 9713,
                                "end": 9715,
                                "loc": {
                                  "start": {
                                    "line": 208,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 208,
                                    "column": 33
                                  }
                                },
                                "elements": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9716,
                                "end": 9722,
                                "loc": {
                                  "start": {
                                    "line": 208,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 208,
                                    "column": 40
                                  }
                                },
                                "name": "concat"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 9723,
                                "end": 9730,
                                "loc": {
                                  "start": {
                                    "line": 208,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 208,
                                    "column": 48
                                  }
                                },
                                "name": "objects"
                              }
                            ]
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 9744,
                      "end": 9815,
                      "loc": {
                        "start": {
                          "line": 210,
                          "column": 8
                        },
                        "end": {
                          "line": 210,
                          "column": 79
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9748,
                          "end": 9814,
                          "loc": {
                            "start": {
                              "line": 210,
                              "column": 12
                            },
                            "end": {
                              "line": 210,
                              "column": 78
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9748,
                            "end": 9761,
                            "loc": {
                              "start": {
                                "line": 210,
                                "column": 12
                              },
                              "end": {
                                "line": 210,
                                "column": 25
                              }
                            },
                            "name": "inObjectsList"
                          },
                          "init": {
                            "type": "ArrowFunctionExpression",
                            "start": 9765,
                            "end": 9813,
                            "loc": {
                              "start": {
                                "line": 210,
                                "column": 29
                              },
                              "end": {
                                "line": 210,
                                "column": 77
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 9765,
                                "end": 9769,
                                "loc": {
                                  "start": {
                                    "line": 210,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 210,
                                    "column": 33
                                  }
                                },
                                "name": "elem"
                              }
                            ],
                            "body": {
                              "type": "LogicalExpression",
                              "start": 9773,
                              "end": 9813,
                              "loc": {
                                "start": {
                                  "line": 210,
                                  "column": 37
                                },
                                "end": {
                                  "line": 210,
                                  "column": 77
                                }
                              },
                              "left": {
                                "type": "UnaryExpression",
                                "start": 9773,
                                "end": 9781,
                                "loc": {
                                  "start": {
                                    "line": 210,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 210,
                                    "column": 45
                                  }
                                },
                                "operator": "!",
                                "prefix": true,
                                "argument": {
                                  "type": "Identifier",
                                  "start": 9774,
                                  "end": 9781,
                                  "loc": {
                                    "start": {
                                      "line": 210,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 210,
                                      "column": 45
                                    }
                                  },
                                  "name": "objects"
                                }
                              },
                              "operator": "||",
                              "right": {
                                "type": "BinaryExpression",
                                "start": 9785,
                                "end": 9813,
                                "loc": {
                                  "start": {
                                    "line": 210,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 210,
                                    "column": 77
                                  }
                                },
                                "left": {
                                  "type": "CallExpression",
                                  "start": 9785,
                                  "end": 9806,
                                  "loc": {
                                    "start": {
                                      "line": 210,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 210,
                                      "column": 70
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 9785,
                                    "end": 9800,
                                    "loc": {
                                      "start": {
                                        "line": 210,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 210,
                                        "column": 64
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 9785,
                                      "end": 9792,
                                      "loc": {
                                        "start": {
                                          "line": 210,
                                          "column": 49
                                        },
                                        "end": {
                                          "line": 210,
                                          "column": 56
                                        }
                                      },
                                      "name": "objects"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9793,
                                      "end": 9800,
                                      "loc": {
                                        "start": {
                                          "line": 210,
                                          "column": 57
                                        },
                                        "end": {
                                          "line": 210,
                                          "column": 64
                                        }
                                      },
                                      "name": "indexOf"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 9801,
                                      "end": 9805,
                                      "loc": {
                                        "start": {
                                          "line": 210,
                                          "column": 65
                                        },
                                        "end": {
                                          "line": 210,
                                          "column": 69
                                        }
                                      },
                                      "name": "elem"
                                    }
                                  ]
                                },
                                "operator": "!==",
                                "right": {
                                  "type": "UnaryExpression",
                                  "start": 9811,
                                  "end": 9813,
                                  "loc": {
                                    "start": {
                                      "line": 210,
                                      "column": 75
                                    },
                                    "end": {
                                      "line": 210,
                                      "column": 77
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Literal",
                                    "start": 9812,
                                    "end": 9813,
                                    "loc": {
                                      "start": {
                                        "line": 210,
                                        "column": 76
                                      },
                                      "end": {
                                        "line": 210,
                                        "column": 77
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  }
                                }
                              }
                            },
                            "parenthesizedExpression": true
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 9825,
                      "end": 9894,
                      "loc": {
                        "start": {
                          "line": 211,
                          "column": 8
                        },
                        "end": {
                          "line": 211,
                          "column": 77
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9829,
                          "end": 9893,
                          "loc": {
                            "start": {
                              "line": 211,
                              "column": 12
                            },
                            "end": {
                              "line": 211,
                              "column": 76
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9829,
                            "end": 9847,
                            "loc": {
                              "start": {
                                "line": 211,
                                "column": 12
                              },
                              "end": {
                                "line": 211,
                                "column": 30
                              }
                            },
                            "name": "isRelatedToObjects"
                          },
                          "init": {
                            "type": "ArrowFunctionExpression",
                            "start": 9851,
                            "end": 9892,
                            "loc": {
                              "start": {
                                "line": 211,
                                "column": 34
                              },
                              "end": {
                                "line": 211,
                                "column": 75
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 9851,
                                "end": 9857,
                                "loc": {
                                  "start": {
                                    "line": 211,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 211,
                                    "column": 40
                                  }
                                },
                                "name": "constr"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 9861,
                              "end": 9892,
                              "loc": {
                                "start": {
                                  "line": 211,
                                  "column": 44
                                },
                                "end": {
                                  "line": 211,
                                  "column": 75
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 9861,
                                "end": 9877,
                                "loc": {
                                  "start": {
                                    "line": 211,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 211,
                                    "column": 60
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 9861,
                                  "end": 9872,
                                  "loc": {
                                    "start": {
                                      "line": 211,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 211,
                                      "column": 55
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 9861,
                                    "end": 9867,
                                    "loc": {
                                      "start": {
                                        "line": 211,
                                        "column": 44
                                      },
                                      "end": {
                                        "line": 211,
                                        "column": 50
                                      }
                                    },
                                    "name": "constr"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9868,
                                    "end": 9872,
                                    "loc": {
                                      "start": {
                                        "line": 211,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 211,
                                        "column": 55
                                      }
                                    },
                                    "name": "args"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9873,
                                  "end": 9877,
                                  "loc": {
                                    "start": {
                                      "line": 211,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 211,
                                      "column": 60
                                    }
                                  },
                                  "name": "some"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 9878,
                                  "end": 9891,
                                  "loc": {
                                    "start": {
                                      "line": 211,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 211,
                                      "column": 74
                                    }
                                  },
                                  "name": "inObjectsList"
                                }
                              ]
                            },
                            "parenthesizedExpression": true
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 9906,
                      "end": 10054,
                      "loc": {
                        "start": {
                          "line": 213,
                          "column": 8
                        },
                        "end": {
                          "line": 215,
                          "column": 40
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9910,
                          "end": 10053,
                          "loc": {
                            "start": {
                              "line": 213,
                              "column": 12
                            },
                            "end": {
                              "line": 215,
                              "column": 39
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9910,
                            "end": 9925,
                            "loc": {
                              "start": {
                                "line": 213,
                                "column": 12
                              },
                              "end": {
                                "line": 213,
                                "column": 27
                              }
                            },
                            "name": "constraintsList"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 9928,
                            "end": 10053,
                            "loc": {
                              "start": {
                                "line": 213,
                                "column": 30
                              },
                              "end": {
                                "line": 215,
                                "column": 39
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 9928,
                              "end": 10033,
                              "loc": {
                                "start": {
                                  "line": 213,
                                  "column": 30
                                },
                                "end": {
                                  "line": 215,
                                  "column": 19
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 9928,
                                "end": 10012,
                                "loc": {
                                  "start": {
                                    "line": 213,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 214,
                                    "column": 57
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 9928,
                                  "end": 9974,
                                  "loc": {
                                    "start": {
                                      "line": 213,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 214,
                                      "column": 19
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 9928,
                                    "end": 9953,
                                    "loc": {
                                      "start": {
                                        "line": 213,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 213,
                                        "column": 55
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 9928,
                                      "end": 9951,
                                      "loc": {
                                        "start": {
                                          "line": 213,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 213,
                                          "column": 53
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 9928,
                                        "end": 9932,
                                        "loc": {
                                          "start": {
                                            "line": 213,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 213,
                                            "column": 34
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9933,
                                        "end": 9951,
                                        "loc": {
                                          "start": {
                                            "line": 213,
                                            "column": 35
                                          },
                                          "end": {
                                            "line": 213,
                                            "column": 53
                                          }
                                        },
                                        "name": "getObjectsOnSketch"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9968,
                                    "end": 9974,
                                    "loc": {
                                      "start": {
                                        "line": 214,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 214,
                                        "column": 19
                                      }
                                    },
                                    "name": "filter"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "ArrowFunctionExpression",
                                    "start": 9975,
                                    "end": 10011,
                                    "loc": {
                                      "start": {
                                        "line": 214,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 214,
                                        "column": 56
                                      }
                                    },
                                    "id": null,
                                    "generator": false,
                                    "expression": true,
                                    "async": false,
                                    "params": [
                                      {
                                        "type": "Identifier",
                                        "start": 9975,
                                        "end": 9980,
                                        "loc": {
                                          "start": {
                                            "line": 214,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 214,
                                            "column": 25
                                          }
                                        },
                                        "name": "child"
                                      }
                                    ],
                                    "body": {
                                      "type": "BinaryExpression",
                                      "start": 9984,
                                      "end": 10011,
                                      "loc": {
                                        "start": {
                                          "line": 214,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 214,
                                          "column": 56
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 9984,
                                        "end": 9989,
                                        "loc": {
                                          "start": {
                                            "line": 214,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 214,
                                            "column": 34
                                          }
                                        },
                                        "name": "child"
                                      },
                                      "operator": "instanceof",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 10001,
                                        "end": 10011,
                                        "loc": {
                                          "start": {
                                            "line": 214,
                                            "column": 46
                                          },
                                          "end": {
                                            "line": 214,
                                            "column": 56
                                          }
                                        },
                                        "name": "Constraint"
                                      }
                                    }
                                  }
                                ]
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10027,
                                "end": 10033,
                                "loc": {
                                  "start": {
                                    "line": 215,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 215,
                                    "column": 19
                                  }
                                },
                                "name": "filter"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 10034,
                                "end": 10052,
                                "loc": {
                                  "start": {
                                    "line": 215,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 215,
                                    "column": 38
                                  }
                                },
                                "name": "isRelatedToObjects"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 10064,
                      "end": 10087,
                      "loc": {
                        "start": {
                          "line": 216,
                          "column": 8
                        },
                        "end": {
                          "line": 216,
                          "column": 31
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 10071,
                        "end": 10086,
                        "loc": {
                          "start": {
                            "line": 216,
                            "column": 15
                          },
                          "end": {
                            "line": 216,
                            "column": 30
                          }
                        },
                        "name": "constraintsList"
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return list of constraints related to passed object or objects,",
                  "start": 9503,
                  "end": 9569,
                  "loc": {
                    "start": {
                      "line": 205,
                      "column": 4
                    },
                    "end": {
                      "line": 205,
                      "column": 70
                    }
                  },
                  "range": [
                    9503,
                    9569
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " or list of all constraints, if 'objects' parameter is undefined",
                  "start": 9575,
                  "end": 9641,
                  "loc": {
                    "start": {
                      "line": 206,
                      "column": 4
                    },
                    "end": {
                      "line": 206,
                      "column": 70
                    }
                  },
                  "range": [
                    9575,
                    9641
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return ancestor of the object that is directly lying on the sketch",
                  "start": 10102,
                  "end": 10171,
                  "loc": {
                    "start": {
                      "line": 219,
                      "column": 4
                    },
                    "end": {
                      "line": 219,
                      "column": 73
                    }
                  },
                  "range": [
                    10102,
                    10171
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 10177,
              "end": 10377,
              "loc": {
                "start": {
                  "line": 220,
                  "column": 4
                },
                "end": {
                  "line": 226,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 10177,
                "end": 10196,
                "loc": {
                  "start": {
                    "line": 220,
                    "column": 4
                  },
                  "end": {
                    "line": 220,
                    "column": 23
                  }
                },
                "name": "getAncestorOnSketch",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 10196,
                "end": 10377,
                "loc": {
                  "start": {
                    "line": 220,
                    "column": 23
                  },
                  "end": {
                    "line": 226,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 10197,
                    "end": 10203,
                    "loc": {
                      "start": {
                        "line": 220,
                        "column": 24
                      },
                      "end": {
                        "line": 220,
                        "column": 30
                      }
                    },
                    "name": "object"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 10205,
                  "end": 10377,
                  "loc": {
                    "start": {
                      "line": 220,
                      "column": 32
                    },
                    "end": {
                      "line": 226,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 10216,
                      "end": 10346,
                      "loc": {
                        "start": {
                          "line": 221,
                          "column": 8
                        },
                        "end": {
                          "line": 224,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 10216,
                        "end": 10345,
                        "loc": {
                          "start": {
                            "line": 221,
                            "column": 8
                          },
                          "end": {
                            "line": 224,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 10216,
                          "end": 10240,
                          "loc": {
                            "start": {
                              "line": 221,
                              "column": 8
                            },
                            "end": {
                              "line": 221,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 10216,
                            "end": 10222,
                            "loc": {
                              "start": {
                                "line": 221,
                                "column": 8
                              },
                              "end": {
                                "line": 221,
                                "column": 14
                              }
                            },
                            "name": "object"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 10223,
                            "end": 10240,
                            "loc": {
                              "start": {
                                "line": 221,
                                "column": 15
                              },
                              "end": {
                                "line": 221,
                                "column": 32
                              }
                            },
                            "name": "traverseAncestors"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 10241,
                            "end": 10344,
                            "loc": {
                              "start": {
                                "line": 221,
                                "column": 33
                              },
                              "end": {
                                "line": 224,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 10241,
                                "end": 10249,
                                "loc": {
                                  "start": {
                                    "line": 221,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 221,
                                    "column": 41
                                  }
                                },
                                "name": "ancestor"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 10253,
                              "end": 10344,
                              "loc": {
                                "start": {
                                  "line": 221,
                                  "column": 45
                                },
                                "end": {
                                  "line": 224,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 10268,
                                  "end": 10333,
                                  "loc": {
                                    "start": {
                                      "line": 222,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 223,
                                      "column": 34
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 10272,
                                    "end": 10296,
                                    "loc": {
                                      "start": {
                                        "line": 222,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 222,
                                        "column": 40
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 10272,
                                      "end": 10287,
                                      "loc": {
                                        "start": {
                                          "line": 222,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 222,
                                          "column": 31
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 10272,
                                        "end": 10280,
                                        "loc": {
                                          "start": {
                                            "line": 222,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 222,
                                            "column": 24
                                          }
                                        },
                                        "name": "ancestor"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10281,
                                        "end": 10287,
                                        "loc": {
                                          "start": {
                                            "line": 222,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 222,
                                            "column": 31
                                          }
                                        },
                                        "name": "parent"
                                      },
                                      "computed": false
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "ThisExpression",
                                      "start": 10292,
                                      "end": 10296,
                                      "loc": {
                                        "start": {
                                          "line": 222,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 222,
                                          "column": 40
                                        }
                                      }
                                    }
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 10315,
                                    "end": 10333,
                                    "loc": {
                                      "start": {
                                        "line": 223,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 223,
                                        "column": 34
                                      }
                                    },
                                    "expression": {
                                      "type": "AssignmentExpression",
                                      "start": 10315,
                                      "end": 10332,
                                      "loc": {
                                        "start": {
                                          "line": 223,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 223,
                                          "column": 33
                                        }
                                      },
                                      "operator": "=",
                                      "left": {
                                        "type": "Identifier",
                                        "start": 10315,
                                        "end": 10321,
                                        "loc": {
                                          "start": {
                                            "line": 223,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 223,
                                            "column": 22
                                          }
                                        },
                                        "name": "object"
                                      },
                                      "right": {
                                        "type": "Identifier",
                                        "start": 10324,
                                        "end": 10332,
                                        "loc": {
                                          "start": {
                                            "line": 223,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 223,
                                            "column": 33
                                          }
                                        },
                                        "name": "ancestor"
                                      }
                                    }
                                  },
                                  "alternate": null
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 10356,
                      "end": 10370,
                      "loc": {
                        "start": {
                          "line": 225,
                          "column": 8
                        },
                        "end": {
                          "line": 225,
                          "column": 22
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 10363,
                        "end": 10369,
                        "loc": {
                          "start": {
                            "line": 225,
                            "column": 15
                          },
                          "end": {
                            "line": 225,
                            "column": 21
                          }
                        },
                        "name": "object"
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return ancestor of the object that is directly lying on the sketch",
                  "start": 10102,
                  "end": 10171,
                  "loc": {
                    "start": {
                      "line": 219,
                      "column": 4
                    },
                    "end": {
                      "line": 219,
                      "column": 73
                    }
                  },
                  "range": [
                    10102,
                    10171
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return true if object was added with addToSketch",
                  "start": 10385,
                  "end": 10436,
                  "loc": {
                    "start": {
                      "line": 228,
                      "column": 4
                    },
                    "end": {
                      "line": 228,
                      "column": 55
                    }
                  },
                  "range": [
                    10385,
                    10436
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 10442,
              "end": 10517,
              "loc": {
                "start": {
                  "line": 229,
                  "column": 4
                },
                "end": {
                  "line": 231,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 10442,
                "end": 10452,
                "loc": {
                  "start": {
                    "line": 229,
                    "column": 4
                  },
                  "end": {
                    "line": 229,
                    "column": 14
                  }
                },
                "name": "isOnSketch",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 10452,
                "end": 10517,
                "loc": {
                  "start": {
                    "line": 229,
                    "column": 14
                  },
                  "end": {
                    "line": 231,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 10453,
                    "end": 10459,
                    "loc": {
                      "start": {
                        "line": 229,
                        "column": 15
                      },
                      "end": {
                        "line": 229,
                        "column": 21
                      }
                    },
                    "name": "object"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 10461,
                  "end": 10517,
                  "loc": {
                    "start": {
                      "line": 229,
                      "column": 23
                    },
                    "end": {
                      "line": 231,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 10472,
                      "end": 10510,
                      "loc": {
                        "start": {
                          "line": 230,
                          "column": 8
                        },
                        "end": {
                          "line": 230,
                          "column": 46
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 10479,
                        "end": 10509,
                        "loc": {
                          "start": {
                            "line": 230,
                            "column": 15
                          },
                          "end": {
                            "line": 230,
                            "column": 45
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 10479,
                          "end": 10501,
                          "loc": {
                            "start": {
                              "line": 230,
                              "column": 15
                            },
                            "end": {
                              "line": 230,
                              "column": 37
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 10479,
                            "end": 10497,
                            "loc": {
                              "start": {
                                "line": 230,
                                "column": 15
                              },
                              "end": {
                                "line": 230,
                                "column": 33
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 10479,
                              "end": 10483,
                              "loc": {
                                "start": {
                                  "line": 230,
                                  "column": 15
                                },
                                "end": {
                                  "line": 230,
                                  "column": 19
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10484,
                              "end": 10497,
                              "loc": {
                                "start": {
                                  "line": 230,
                                  "column": 20
                                },
                                "end": {
                                  "line": 230,
                                  "column": 33
                                }
                              },
                              "name": "sketchObjects"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 10498,
                            "end": 10501,
                            "loc": {
                              "start": {
                                "line": 230,
                                "column": 34
                              },
                              "end": {
                                "line": 230,
                                "column": 37
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 10502,
                            "end": 10508,
                            "loc": {
                              "start": {
                                "line": 230,
                                "column": 38
                              },
                              "end": {
                                "line": 230,
                                "column": 44
                              }
                            },
                            "name": "object"
                          }
                        ]
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return true if object was added with addToSketch",
                  "start": 10385,
                  "end": 10436,
                  "loc": {
                    "start": {
                      "line": 228,
                      "column": 4
                    },
                    "end": {
                      "line": 228,
                      "column": 55
                    }
                  },
                  "range": [
                    10385,
                    10436
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Add auxiliary objects which shouldn't physically be on the sketch",
                  "start": 10525,
                  "end": 10593,
                  "loc": {
                    "start": {
                      "line": 233,
                      "column": 4
                    },
                    "end": {
                      "line": 233,
                      "column": 72
                    }
                  },
                  "range": [
                    10525,
                    10593
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " These objects will be displayed in sketch coordinates but not returned from getObjectsOnSketch",
                  "start": 10599,
                  "end": 10696,
                  "loc": {
                    "start": {
                      "line": 234,
                      "column": 4
                    },
                    "end": {
                      "line": 234,
                      "column": 101
                    }
                  },
                  "range": [
                    10599,
                    10696
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " Example of such objects: sketch's grid, preview line segment for polyline being created",
                  "start": 10702,
                  "end": 10792,
                  "loc": {
                    "start": {
                      "line": 235,
                      "column": 4
                    },
                    "end": {
                      "line": 235,
                      "column": 94
                    }
                  },
                  "range": [
                    10702,
                    10792
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 10798,
              "end": 11503,
              "loc": {
                "start": {
                  "line": 236,
                  "column": 4
                },
                "end": {
                  "line": 248,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 10798,
                "end": 10810,
                "loc": {
                  "start": {
                    "line": 236,
                    "column": 4
                  },
                  "end": {
                    "line": 236,
                    "column": 16
                  }
                },
                "name": "addAuxObject",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 10810,
                "end": 11503,
                "loc": {
                  "start": {
                    "line": 236,
                    "column": 16
                  },
                  "end": {
                    "line": 248,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 10811,
                    "end": 10818,
                    "loc": {
                      "start": {
                        "line": 236,
                        "column": 17
                      },
                      "end": {
                        "line": 236,
                        "column": 24
                      }
                    },
                    "name": "objects",
                    "leadingComments": null,
                    "trailingComments": [
                      {
                        "type": "Block",
                        "value": ", options",
                        "start": 10818,
                        "end": 10831,
                        "loc": {
                          "start": {
                            "line": 236,
                            "column": 24
                          },
                          "end": {
                            "line": 236,
                            "column": 37
                          }
                        },
                        "range": [
                          10818,
                          10831
                        ]
                      }
                    ]
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 10833,
                  "end": 11503,
                  "loc": {
                    "start": {
                      "line": 236,
                      "column": 39
                    },
                    "end": {
                      "line": 248,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 10844,
                      "end": 10873,
                      "loc": {
                        "start": {
                          "line": 237,
                          "column": 8
                        },
                        "end": {
                          "line": 237,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 10844,
                        "end": 10872,
                        "loc": {
                          "start": {
                            "line": 237,
                            "column": 8
                          },
                          "end": {
                            "line": 237,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 10844,
                          "end": 10851,
                          "loc": {
                            "start": {
                              "line": 237,
                              "column": 8
                            },
                            "end": {
                              "line": 237,
                              "column": 15
                            }
                          },
                          "name": "objects",
                          "leadingComments": null
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 10854,
                          "end": 10872,
                          "loc": {
                            "start": {
                              "line": 237,
                              "column": 18
                            },
                            "end": {
                              "line": 237,
                              "column": 36
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 10854,
                            "end": 10863,
                            "loc": {
                              "start": {
                                "line": 237,
                                "column": 18
                              },
                              "end": {
                                "line": 237,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "ArrayExpression",
                              "start": 10854,
                              "end": 10856,
                              "loc": {
                                "start": {
                                  "line": 237,
                                  "column": 18
                                },
                                "end": {
                                  "line": 237,
                                  "column": 20
                                }
                              },
                              "elements": []
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10857,
                              "end": 10863,
                              "loc": {
                                "start": {
                                  "line": 237,
                                  "column": 21
                                },
                                "end": {
                                  "line": 237,
                                  "column": 27
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 10864,
                              "end": 10871,
                              "loc": {
                                "start": {
                                  "line": 237,
                                  "column": 28
                                },
                                "end": {
                                  "line": 237,
                                  "column": 35
                                }
                              },
                              "name": "objects"
                            }
                          ]
                        },
                        "leadingComments": null
                      },
                      "leadingComments": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 10883,
                      "end": 10913,
                      "loc": {
                        "start": {
                          "line": 238,
                          "column": 8
                        },
                        "end": {
                          "line": 238,
                          "column": 38
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 10887,
                          "end": 10912,
                          "loc": {
                            "start": {
                              "line": 238,
                              "column": 12
                            },
                            "end": {
                              "line": 238,
                              "column": 37
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 10887,
                            "end": 10891,
                            "loc": {
                              "start": {
                                "line": 238,
                                "column": 12
                              },
                              "end": {
                                "line": 238,
                                "column": 16
                              }
                            },
                            "name": "view"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 10894,
                            "end": 10912,
                            "loc": {
                              "start": {
                                "line": 238,
                                "column": 19
                              },
                              "end": {
                                "line": 238,
                                "column": 37
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 10894,
                              "end": 10907,
                              "loc": {
                                "start": {
                                  "line": 238,
                                  "column": 19
                                },
                                "end": {
                                  "line": 238,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 10894,
                                "end": 10898,
                                "loc": {
                                  "start": {
                                    "line": 238,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 238,
                                    "column": 23
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10899,
                                "end": 10907,
                                "loc": {
                                  "start": {
                                    "line": 238,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 238,
                                    "column": 32
                                  }
                                },
                                "name": "sketcher"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10908,
                              "end": 10912,
                              "loc": {
                                "start": {
                                  "line": 238,
                                  "column": 33
                                },
                                "end": {
                                  "line": 238,
                                  "column": 37
                                }
                              },
                              "name": "view"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var",
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " we can't automatically remove objects from the sketch because",
                          "start": 10923,
                          "end": 10987,
                          "loc": {
                            "start": {
                              "line": 239,
                              "column": 8
                            },
                            "end": {
                              "line": 239,
                              "column": 72
                            }
                          },
                          "range": [
                            10923,
                            10987
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " it's an asynchronous action; this function should be synchronous",
                          "start": 10997,
                          "end": 11064,
                          "loc": {
                            "start": {
                              "line": 240,
                              "column": 8
                            },
                            "end": {
                              "line": 240,
                              "column": 75
                            }
                          },
                          "range": [
                            10997,
                            11064
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 11074,
                      "end": 11238,
                      "loc": {
                        "start": {
                          "line": 241,
                          "column": 8
                        },
                        "end": {
                          "line": 242,
                          "column": 85
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 11078,
                        "end": 11150,
                        "loc": {
                          "start": {
                            "line": 241,
                            "column": 12
                          },
                          "end": {
                            "line": 241,
                            "column": 84
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11078,
                          "end": 11090,
                          "loc": {
                            "start": {
                              "line": 241,
                              "column": 12
                            },
                            "end": {
                              "line": 241,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 11078,
                            "end": 11085,
                            "loc": {
                              "start": {
                                "line": 241,
                                "column": 12
                              },
                              "end": {
                                "line": 241,
                                "column": 19
                              }
                            },
                            "name": "objects",
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11086,
                            "end": 11090,
                            "loc": {
                              "start": {
                                "line": 241,
                                "column": 20
                              },
                              "end": {
                                "line": 241,
                                "column": 24
                              }
                            },
                            "name": "some"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "FunctionExpression",
                            "start": 11091,
                            "end": 11143,
                            "loc": {
                              "start": {
                                "line": 241,
                                "column": 25
                              },
                              "end": {
                                "line": 241,
                                "column": 77
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 11100,
                                "end": 11106,
                                "loc": {
                                  "start": {
                                    "line": 241,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 241,
                                    "column": 40
                                  }
                                },
                                "name": "object"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 11108,
                              "end": 11143,
                              "loc": {
                                "start": {
                                  "line": 241,
                                  "column": 42
                                },
                                "end": {
                                  "line": 241,
                                  "column": 77
                                }
                              },
                              "body": [
                                {
                                  "type": "ReturnStatement",
                                  "start": 11110,
                                  "end": 11141,
                                  "loc": {
                                    "start": {
                                      "line": 241,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 241,
                                      "column": 75
                                    }
                                  },
                                  "argument": {
                                    "type": "CallExpression",
                                    "start": 11117,
                                    "end": 11140,
                                    "loc": {
                                      "start": {
                                        "line": 241,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 241,
                                        "column": 74
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 11117,
                                      "end": 11132,
                                      "loc": {
                                        "start": {
                                          "line": 241,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 241,
                                          "column": 66
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 11117,
                                        "end": 11121,
                                        "loc": {
                                          "start": {
                                            "line": 241,
                                            "column": 51
                                          },
                                          "end": {
                                            "line": 241,
                                            "column": 55
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 11122,
                                        "end": 11132,
                                        "loc": {
                                          "start": {
                                            "line": 241,
                                            "column": 56
                                          },
                                          "end": {
                                            "line": 241,
                                            "column": 66
                                          }
                                        },
                                        "name": "isOnSketch"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 11133,
                                        "end": 11139,
                                        "loc": {
                                          "start": {
                                            "line": 241,
                                            "column": 67
                                          },
                                          "end": {
                                            "line": 241,
                                            "column": 73
                                          }
                                        },
                                        "name": "object"
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "ThisExpression",
                            "start": 11145,
                            "end": 11149,
                            "loc": {
                              "start": {
                                "line": 241,
                                "column": 79
                              },
                              "end": {
                                "line": 241,
                                "column": 83
                              }
                            }
                          }
                        ],
                        "leadingComments": null
                      },
                      "consequent": {
                        "type": "ThrowStatement",
                        "start": 11165,
                        "end": 11238,
                        "loc": {
                          "start": {
                            "line": 242,
                            "column": 12
                          },
                          "end": {
                            "line": 242,
                            "column": 85
                          }
                        },
                        "argument": {
                          "type": "Literal",
                          "start": 11171,
                          "end": 11237,
                          "loc": {
                            "start": {
                              "line": 242,
                              "column": 18
                            },
                            "end": {
                              "line": 242,
                              "column": 84
                            }
                          },
                          "value": "Sketch.addAuxObject: can't add object on sketch. Remove it first",
                          "rawValue": "Sketch.addAuxObject: can't add object on sketch. Remove it first",
                          "raw": "\"Sketch.addAuxObject: can't add object on sketch. Remove it first\""
                        }
                      },
                      "alternate": null,
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " we can't automatically remove objects from the sketch because",
                          "start": 10923,
                          "end": 10987,
                          "loc": {
                            "start": {
                              "line": 239,
                              "column": 8
                            },
                            "end": {
                              "line": 239,
                              "column": 72
                            }
                          },
                          "range": [
                            10923,
                            10987
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " it's an asynchronous action; this function should be synchronous",
                          "start": 10997,
                          "end": 11064,
                          "loc": {
                            "start": {
                              "line": 240,
                              "column": 8
                            },
                            "end": {
                              "line": 240,
                              "column": 75
                            }
                          },
                          "range": [
                            10997,
                            11064
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 11248,
                      "end": 11496,
                      "loc": {
                        "start": {
                          "line": 243,
                          "column": 8
                        },
                        "end": {
                          "line": 247,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11248,
                        "end": 11495,
                        "loc": {
                          "start": {
                            "line": 243,
                            "column": 8
                          },
                          "end": {
                            "line": 247,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11248,
                          "end": 11263,
                          "loc": {
                            "start": {
                              "line": 243,
                              "column": 8
                            },
                            "end": {
                              "line": 243,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 11248,
                            "end": 11255,
                            "loc": {
                              "start": {
                                "line": 243,
                                "column": 8
                              },
                              "end": {
                                "line": 243,
                                "column": 15
                              }
                            },
                            "name": "objects"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11256,
                            "end": 11263,
                            "loc": {
                              "start": {
                                "line": 243,
                                "column": 16
                              },
                              "end": {
                                "line": 243,
                                "column": 23
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 11264,
                            "end": 11494,
                            "loc": {
                              "start": {
                                "line": 243,
                                "column": 24
                              },
                              "end": {
                                "line": 247,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 11264,
                                "end": 11267,
                                "loc": {
                                  "start": {
                                    "line": 243,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 243,
                                    "column": 27
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 11271,
                              "end": 11494,
                              "loc": {
                                "start": {
                                  "line": 243,
                                  "column": 31
                                },
                                "end": {
                                  "line": 247,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 11286,
                                  "end": 11300,
                                  "loc": {
                                    "start": {
                                      "line": 244,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 244,
                                      "column": 26
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 11286,
                                    "end": 11299,
                                    "loc": {
                                      "start": {
                                        "line": 244,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 244,
                                        "column": 25
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 11286,
                                      "end": 11294,
                                      "loc": {
                                        "start": {
                                          "line": 244,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 244,
                                          "column": 20
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 11286,
                                        "end": 11290,
                                        "loc": {
                                          "start": {
                                            "line": 244,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 244,
                                            "column": 16
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 11291,
                                        "end": 11294,
                                        "loc": {
                                          "start": {
                                            "line": 244,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 244,
                                            "column": 20
                                          }
                                        },
                                        "name": "add"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 11295,
                                        "end": 11298,
                                        "loc": {
                                          "start": {
                                            "line": 244,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 244,
                                            "column": 24
                                          }
                                        },
                                        "name": "obj"
                                      }
                                    ]
                                  },
                                  "trailingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": "note: some auxilliary objects have custom visualization system (e.g. sketch grid and box)",
                                      "start": 11314,
                                      "end": 11405,
                                      "loc": {
                                        "start": {
                                          "line": 245,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 245,
                                          "column": 103
                                        }
                                      },
                                      "range": [
                                        11314,
                                        11405
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "TryStatement",
                                  "start": 11419,
                                  "end": 11483,
                                  "loc": {
                                    "start": {
                                      "line": 246,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 246,
                                      "column": 76
                                    }
                                  },
                                  "block": {
                                    "type": "BlockStatement",
                                    "start": 11423,
                                    "end": 11469,
                                    "loc": {
                                      "start": {
                                        "line": 246,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 246,
                                        "column": 62
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 11425,
                                        "end": 11467,
                                        "loc": {
                                          "start": {
                                            "line": 246,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 246,
                                            "column": 60
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 11425,
                                          "end": 11466,
                                          "loc": {
                                            "start": {
                                              "line": 246,
                                              "column": 18
                                            },
                                            "end": {
                                              "line": 246,
                                              "column": 59
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 11425,
                                            "end": 11455,
                                            "loc": {
                                              "start": {
                                                "line": 246,
                                                "column": 18
                                              },
                                              "end": {
                                                "line": 246,
                                                "column": 48
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 11425,
                                              "end": 11433,
                                              "loc": {
                                                "start": {
                                                  "line": 246,
                                                  "column": 18
                                                },
                                                "end": {
                                                  "line": 246,
                                                  "column": 26
                                                }
                                              },
                                              "name": "Sketcher",
                                              "leadingComments": null
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 11434,
                                              "end": 11455,
                                              "loc": {
                                                "start": {
                                                  "line": 246,
                                                  "column": 27
                                                },
                                                "end": {
                                                  "line": 246,
                                                  "column": 48
                                                }
                                              },
                                              "name": "registerVisualization"
                                            },
                                            "computed": false,
                                            "leadingComments": null
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 11456,
                                              "end": 11460,
                                              "loc": {
                                                "start": {
                                                  "line": 246,
                                                  "column": 49
                                                },
                                                "end": {
                                                  "line": 246,
                                                  "column": 53
                                                }
                                              },
                                              "name": "view"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 11462,
                                              "end": 11465,
                                              "loc": {
                                                "start": {
                                                  "line": 246,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 246,
                                                  "column": 58
                                                }
                                              },
                                              "name": "obj"
                                            }
                                          ],
                                          "leadingComments": null
                                        },
                                        "leadingComments": null
                                      }
                                    ],
                                    "leadingComments": null
                                  },
                                  "handler": {
                                    "type": "CatchClause",
                                    "start": 11470,
                                    "end": 11483,
                                    "loc": {
                                      "start": {
                                        "line": 246,
                                        "column": 63
                                      },
                                      "end": {
                                        "line": 246,
                                        "column": 76
                                      }
                                    },
                                    "param": {
                                      "type": "Identifier",
                                      "start": 11476,
                                      "end": 11479,
                                      "loc": {
                                        "start": {
                                          "line": 246,
                                          "column": 69
                                        },
                                        "end": {
                                          "line": 246,
                                          "column": 72
                                        }
                                      },
                                      "name": "err"
                                    },
                                    "body": {
                                      "type": "BlockStatement",
                                      "start": 11481,
                                      "end": 11483,
                                      "loc": {
                                        "start": {
                                          "line": 246,
                                          "column": 74
                                        },
                                        "end": {
                                          "line": 246,
                                          "column": 76
                                        }
                                      },
                                      "body": []
                                    }
                                  },
                                  "guardedHandlers": [],
                                  "finalizer": null,
                                  "leadingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": "note: some auxilliary objects have custom visualization system (e.g. sketch grid and box)",
                                      "start": 11314,
                                      "end": 11405,
                                      "loc": {
                                        "start": {
                                          "line": 245,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 245,
                                          "column": 103
                                        }
                                      },
                                      "range": [
                                        11314,
                                        11405
                                      ]
                                    }
                                  ]
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ],
                  "leadingComments": [
                    {
                      "type": "Block",
                      "value": ", options",
                      "start": 10818,
                      "end": 10831,
                      "loc": {
                        "start": {
                          "line": 236,
                          "column": 24
                        },
                        "end": {
                          "line": 236,
                          "column": 37
                        }
                      },
                      "range": [
                        10818,
                        10831
                      ]
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Add auxiliary objects which shouldn't physically be on the sketch",
                  "start": 10525,
                  "end": 10593,
                  "loc": {
                    "start": {
                      "line": 233,
                      "column": 4
                    },
                    "end": {
                      "line": 233,
                      "column": 72
                    }
                  },
                  "range": [
                    10525,
                    10593
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " These objects will be displayed in sketch coordinates but not returned from getObjectsOnSketch",
                  "start": 10599,
                  "end": 10696,
                  "loc": {
                    "start": {
                      "line": 234,
                      "column": 4
                    },
                    "end": {
                      "line": 234,
                      "column": 101
                    }
                  },
                  "range": [
                    10599,
                    10696
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " Example of such objects: sketch's grid, preview line segment for polyline being created",
                  "start": 10702,
                  "end": 10792,
                  "loc": {
                    "start": {
                      "line": 235,
                      "column": 4
                    },
                    "end": {
                      "line": 235,
                      "column": 94
                    }
                  },
                  "range": [
                    10702,
                    10792
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Remove objects previously added with addAuxObject",
                  "start": 11511,
                  "end": 11563,
                  "loc": {
                    "start": {
                      "line": 250,
                      "column": 4
                    },
                    "end": {
                      "line": 250,
                      "column": 56
                    }
                  },
                  "range": [
                    11511,
                    11563
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 11569,
              "end": 11875,
              "loc": {
                "start": {
                  "line": 251,
                  "column": 4
                },
                "end": {
                  "line": 259,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11569,
                "end": 11584,
                "loc": {
                  "start": {
                    "line": 251,
                    "column": 4
                  },
                  "end": {
                    "line": 251,
                    "column": 19
                  }
                },
                "name": "removeAuxObject",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11584,
                "end": 11875,
                "loc": {
                  "start": {
                    "line": 251,
                    "column": 19
                  },
                  "end": {
                    "line": 259,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 11585,
                    "end": 11592,
                    "loc": {
                      "start": {
                        "line": 251,
                        "column": 20
                      },
                      "end": {
                        "line": 251,
                        "column": 27
                      }
                    },
                    "name": "objects",
                    "leadingComments": null,
                    "trailingComments": [
                      {
                        "type": "Block",
                        "value": ", options",
                        "start": 11592,
                        "end": 11605,
                        "loc": {
                          "start": {
                            "line": 251,
                            "column": 27
                          },
                          "end": {
                            "line": 251,
                            "column": 40
                          }
                        },
                        "range": [
                          11592,
                          11605
                        ]
                      }
                    ]
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 11607,
                  "end": 11875,
                  "loc": {
                    "start": {
                      "line": 251,
                      "column": 42
                    },
                    "end": {
                      "line": 259,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 11618,
                      "end": 11647,
                      "loc": {
                        "start": {
                          "line": 252,
                          "column": 8
                        },
                        "end": {
                          "line": 252,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 11618,
                        "end": 11646,
                        "loc": {
                          "start": {
                            "line": 252,
                            "column": 8
                          },
                          "end": {
                            "line": 252,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 11618,
                          "end": 11625,
                          "loc": {
                            "start": {
                              "line": 252,
                              "column": 8
                            },
                            "end": {
                              "line": 252,
                              "column": 15
                            }
                          },
                          "name": "objects",
                          "leadingComments": null
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 11628,
                          "end": 11646,
                          "loc": {
                            "start": {
                              "line": 252,
                              "column": 18
                            },
                            "end": {
                              "line": 252,
                              "column": 36
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 11628,
                            "end": 11637,
                            "loc": {
                              "start": {
                                "line": 252,
                                "column": 18
                              },
                              "end": {
                                "line": 252,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "ArrayExpression",
                              "start": 11628,
                              "end": 11630,
                              "loc": {
                                "start": {
                                  "line": 252,
                                  "column": 18
                                },
                                "end": {
                                  "line": 252,
                                  "column": 20
                                }
                              },
                              "elements": []
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11631,
                              "end": 11637,
                              "loc": {
                                "start": {
                                  "line": 252,
                                  "column": 21
                                },
                                "end": {
                                  "line": 252,
                                  "column": 27
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 11638,
                              "end": 11645,
                              "loc": {
                                "start": {
                                  "line": 252,
                                  "column": 28
                                },
                                "end": {
                                  "line": 252,
                                  "column": 35
                                }
                              },
                              "name": "objects"
                            }
                          ]
                        },
                        "leadingComments": null
                      },
                      "leadingComments": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 11657,
                      "end": 11687,
                      "loc": {
                        "start": {
                          "line": 253,
                          "column": 8
                        },
                        "end": {
                          "line": 253,
                          "column": 38
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11661,
                          "end": 11686,
                          "loc": {
                            "start": {
                              "line": 253,
                              "column": 12
                            },
                            "end": {
                              "line": 253,
                              "column": 37
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11661,
                            "end": 11665,
                            "loc": {
                              "start": {
                                "line": 253,
                                "column": 12
                              },
                              "end": {
                                "line": 253,
                                "column": 16
                              }
                            },
                            "name": "view"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 11668,
                            "end": 11686,
                            "loc": {
                              "start": {
                                "line": 253,
                                "column": 19
                              },
                              "end": {
                                "line": 253,
                                "column": 37
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 11668,
                              "end": 11681,
                              "loc": {
                                "start": {
                                  "line": 253,
                                  "column": 19
                                },
                                "end": {
                                  "line": 253,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 11668,
                                "end": 11672,
                                "loc": {
                                  "start": {
                                    "line": 253,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 253,
                                    "column": 23
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11673,
                                "end": 11681,
                                "loc": {
                                  "start": {
                                    "line": 253,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 253,
                                    "column": 32
                                  }
                                },
                                "name": "sketcher"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11682,
                              "end": 11686,
                              "loc": {
                                "start": {
                                  "line": 253,
                                  "column": 33
                                },
                                "end": {
                                  "line": 253,
                                  "column": 37
                                }
                              },
                              "name": "view"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 11697,
                      "end": 11868,
                      "loc": {
                        "start": {
                          "line": 254,
                          "column": 8
                        },
                        "end": {
                          "line": 258,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11697,
                        "end": 11867,
                        "loc": {
                          "start": {
                            "line": 254,
                            "column": 8
                          },
                          "end": {
                            "line": 258,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11697,
                          "end": 11712,
                          "loc": {
                            "start": {
                              "line": 254,
                              "column": 8
                            },
                            "end": {
                              "line": 254,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 11697,
                            "end": 11704,
                            "loc": {
                              "start": {
                                "line": 254,
                                "column": 8
                              },
                              "end": {
                                "line": 254,
                                "column": 15
                              }
                            },
                            "name": "objects"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11705,
                            "end": 11712,
                            "loc": {
                              "start": {
                                "line": 254,
                                "column": 16
                              },
                              "end": {
                                "line": 254,
                                "column": 23
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 11713,
                            "end": 11866,
                            "loc": {
                              "start": {
                                "line": 254,
                                "column": 24
                              },
                              "end": {
                                "line": 258,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 11713,
                                "end": 11716,
                                "loc": {
                                  "start": {
                                    "line": 254,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 254,
                                    "column": 27
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 11720,
                              "end": 11866,
                              "loc": {
                                "start": {
                                  "line": 254,
                                  "column": 31
                                },
                                "end": {
                                  "line": 258,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 11735,
                                  "end": 11752,
                                  "loc": {
                                    "start": {
                                      "line": 255,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 255,
                                      "column": 29
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 11735,
                                    "end": 11751,
                                    "loc": {
                                      "start": {
                                        "line": 255,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 255,
                                        "column": 28
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 11735,
                                      "end": 11746,
                                      "loc": {
                                        "start": {
                                          "line": 255,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 255,
                                          "column": 23
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 11735,
                                        "end": 11739,
                                        "loc": {
                                          "start": {
                                            "line": 255,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 255,
                                            "column": 16
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 11740,
                                        "end": 11746,
                                        "loc": {
                                          "start": {
                                            "line": 255,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 255,
                                            "column": 23
                                          }
                                        },
                                        "name": "remove"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 11747,
                                        "end": 11750,
                                        "loc": {
                                          "start": {
                                            "line": 255,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 255,
                                            "column": 27
                                          }
                                        },
                                        "name": "obj"
                                      }
                                    ]
                                  },
                                  "trailingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": "note: object is completely disposed (not usable afterwards)",
                                      "start": 11766,
                                      "end": 11827,
                                      "loc": {
                                        "start": {
                                          "line": 256,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 256,
                                          "column": 73
                                        }
                                      },
                                      "range": [
                                        11766,
                                        11827
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 11841,
                                  "end": 11855,
                                  "loc": {
                                    "start": {
                                      "line": 257,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 257,
                                      "column": 26
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 11841,
                                    "end": 11854,
                                    "loc": {
                                      "start": {
                                        "line": 257,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 257,
                                        "column": 25
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 11841,
                                      "end": 11852,
                                      "loc": {
                                        "start": {
                                          "line": 257,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 257,
                                          "column": 23
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 11841,
                                        "end": 11844,
                                        "loc": {
                                          "start": {
                                            "line": 257,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 257,
                                            "column": 15
                                          }
                                        },
                                        "name": "obj",
                                        "leadingComments": null
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 11845,
                                        "end": 11852,
                                        "loc": {
                                          "start": {
                                            "line": 257,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 257,
                                            "column": 23
                                          }
                                        },
                                        "name": "destroy"
                                      },
                                      "computed": false,
                                      "leadingComments": null
                                    },
                                    "arguments": [],
                                    "leadingComments": null
                                  },
                                  "leadingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": "note: object is completely disposed (not usable afterwards)",
                                      "start": 11766,
                                      "end": 11827,
                                      "loc": {
                                        "start": {
                                          "line": 256,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 256,
                                          "column": 73
                                        }
                                      },
                                      "range": [
                                        11766,
                                        11827
                                      ]
                                    }
                                  ]
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ],
                  "leadingComments": [
                    {
                      "type": "Block",
                      "value": ", options",
                      "start": 11592,
                      "end": 11605,
                      "loc": {
                        "start": {
                          "line": 251,
                          "column": 27
                        },
                        "end": {
                          "line": 251,
                          "column": 40
                        }
                      },
                      "range": [
                        11592,
                        11605
                      ]
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Remove objects previously added with addAuxObject",
                  "start": 11511,
                  "end": 11563,
                  "loc": {
                    "start": {
                      "line": 250,
                      "column": 4
                    },
                    "end": {
                      "line": 250,
                      "column": 56
                    }
                  },
                  "range": [
                    11511,
                    11563
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " customize ClassCadObject interface add/remove member function to track sketchObjects",
                  "start": 11883,
                  "end": 11970,
                  "loc": {
                    "start": {
                      "line": 261,
                      "column": 4
                    },
                    "end": {
                      "line": 261,
                      "column": 91
                    }
                  },
                  "range": [
                    11883,
                    11970
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 11976,
              "end": 12207,
              "loc": {
                "start": {
                  "line": 262,
                  "column": 4
                },
                "end": {
                  "line": 266,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11976,
                "end": 11985,
                "loc": {
                  "start": {
                    "line": 262,
                    "column": 4
                  },
                  "end": {
                    "line": 262,
                    "column": 13
                  }
                },
                "name": "addMember",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11985,
                "end": 12207,
                "loc": {
                  "start": {
                    "line": 262,
                    "column": 13
                  },
                  "end": {
                    "line": 266,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 11986,
                    "end": 11992,
                    "loc": {
                      "start": {
                        "line": 262,
                        "column": 14
                      },
                      "end": {
                        "line": 262,
                        "column": 20
                      }
                    },
                    "name": "member"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 11994,
                  "end": 12207,
                  "loc": {
                    "start": {
                      "line": 262,
                      "column": 22
                    },
                    "end": {
                      "line": 266,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 12005,
                      "end": 12063,
                      "loc": {
                        "start": {
                          "line": 263,
                          "column": 8
                        },
                        "end": {
                          "line": 263,
                          "column": 66
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 12005,
                        "end": 12062,
                        "loc": {
                          "start": {
                            "line": 263,
                            "column": 8
                          },
                          "end": {
                            "line": 263,
                            "column": 65
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12005,
                          "end": 12045,
                          "loc": {
                            "start": {
                              "line": 263,
                              "column": 8
                            },
                            "end": {
                              "line": 263,
                              "column": 48
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 12005,
                            "end": 12039,
                            "loc": {
                              "start": {
                                "line": 263,
                                "column": 8
                              },
                              "end": {
                                "line": 263,
                                "column": 42
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 12005,
                              "end": 12029,
                              "loc": {
                                "start": {
                                  "line": 263,
                                  "column": 8
                                },
                                "end": {
                                  "line": 263,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 12005,
                                "end": 12019,
                                "loc": {
                                  "start": {
                                    "line": 263,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 263,
                                    "column": 22
                                  }
                                },
                                "name": "ClassCadObject"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12020,
                                "end": 12029,
                                "loc": {
                                  "start": {
                                    "line": 263,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 263,
                                    "column": 32
                                  }
                                },
                                "name": "prototype"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12030,
                              "end": 12039,
                              "loc": {
                                "start": {
                                  "line": 263,
                                  "column": 33
                                },
                                "end": {
                                  "line": 263,
                                  "column": 42
                                }
                              },
                              "name": "addMember"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12040,
                            "end": 12045,
                            "loc": {
                              "start": {
                                "line": 263,
                                "column": 43
                              },
                              "end": {
                                "line": 263,
                                "column": 48
                              }
                            },
                            "name": "apply"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 12046,
                            "end": 12050,
                            "loc": {
                              "start": {
                                "line": 263,
                                "column": 49
                              },
                              "end": {
                                "line": 263,
                                "column": 53
                              }
                            }
                          },
                          {
                            "type": "Identifier",
                            "start": 12052,
                            "end": 12061,
                            "loc": {
                              "start": {
                                "line": 263,
                                "column": 55
                              },
                              "end": {
                                "line": 263,
                                "column": 64
                              }
                            },
                            "name": "arguments"
                          }
                        ]
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 12073,
                      "end": 12200,
                      "loc": {
                        "start": {
                          "line": 264,
                          "column": 8
                        },
                        "end": {
                          "line": 265,
                          "column": 73
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 12077,
                        "end": 12124,
                        "loc": {
                          "start": {
                            "line": 264,
                            "column": 12
                          },
                          "end": {
                            "line": 264,
                            "column": 59
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 12077,
                          "end": 12108,
                          "loc": {
                            "start": {
                              "line": 264,
                              "column": 12
                            },
                            "end": {
                              "line": 264,
                              "column": 43
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 12077,
                            "end": 12103,
                            "loc": {
                              "start": {
                                "line": 264,
                                "column": 12
                              },
                              "end": {
                                "line": 264,
                                "column": 38
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 12077,
                              "end": 12092,
                              "loc": {
                                "start": {
                                  "line": 264,
                                  "column": 12
                                },
                                "end": {
                                  "line": 264,
                                  "column": 27
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 12077,
                                "end": 12083,
                                "loc": {
                                  "start": {
                                    "line": 264,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 264,
                                    "column": 18
                                  }
                                },
                                "name": "member"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12084,
                                "end": 12092,
                                "loc": {
                                  "start": {
                                    "line": 264,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 264,
                                    "column": 27
                                  }
                                },
                                "name": "userData"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12093,
                              "end": 12103,
                              "loc": {
                                "start": {
                                  "line": 264,
                                  "column": 28
                                },
                                "end": {
                                  "line": 264,
                                  "column": 38
                                }
                              },
                              "name": "memberInfo"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12104,
                            "end": 12108,
                            "loc": {
                              "start": {
                                "line": 264,
                                "column": 39
                              },
                              "end": {
                                "line": 264,
                                "column": 43
                              }
                            },
                            "name": "type"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Literal",
                          "start": 12113,
                          "end": 12124,
                          "loc": {
                            "start": {
                              "line": 264,
                              "column": 48
                            },
                            "end": {
                              "line": 264,
                              "column": 59
                            }
                          },
                          "value": "objectMem",
                          "rawValue": "objectMem",
                          "raw": "'objectMem'"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 12139,
                        "end": 12200,
                        "loc": {
                          "start": {
                            "line": 265,
                            "column": 12
                          },
                          "end": {
                            "line": 265,
                            "column": 73
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 12139,
                          "end": 12199,
                          "loc": {
                            "start": {
                              "line": 265,
                              "column": 12
                            },
                            "end": {
                              "line": 265,
                              "column": 72
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 12139,
                            "end": 12155,
                            "loc": {
                              "start": {
                                "line": 265,
                                "column": 12
                              },
                              "end": {
                                "line": 265,
                                "column": 28
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 12139,
                              "end": 12143,
                              "loc": {
                                "start": {
                                  "line": 265,
                                  "column": 12
                                },
                                "end": {
                                  "line": 265,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12144,
                              "end": 12155,
                              "loc": {
                                "start": {
                                  "line": 265,
                                  "column": 17
                                },
                                "end": {
                                  "line": 265,
                                  "column": 28
                                }
                              },
                              "name": "addToSketch"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 12156,
                              "end": 12162,
                              "loc": {
                                "start": {
                                  "line": 265,
                                  "column": 29
                                },
                                "end": {
                                  "line": 265,
                                  "column": 35
                                }
                              },
                              "name": "member"
                            },
                            {
                              "type": "ObjectExpression",
                              "start": 12164,
                              "end": 12198,
                              "loc": {
                                "start": {
                                  "line": 265,
                                  "column": 37
                                },
                                "end": {
                                  "line": 265,
                                  "column": 71
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 12165,
                                  "end": 12180,
                                  "loc": {
                                    "start": {
                                      "line": 265,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 265,
                                      "column": 53
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 12165,
                                    "end": 12173,
                                    "loc": {
                                      "start": {
                                        "line": 265,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 265,
                                        "column": 46
                                      }
                                    },
                                    "name": "onServer"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 12175,
                                    "end": 12180,
                                    "loc": {
                                      "start": {
                                        "line": 265,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 265,
                                        "column": 53
                                      }
                                    },
                                    "value": false,
                                    "rawValue": false,
                                    "raw": "false"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 12182,
                                  "end": 12197,
                                  "loc": {
                                    "start": {
                                      "line": 265,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 265,
                                      "column": 70
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 12182,
                                    "end": 12190,
                                    "loc": {
                                      "start": {
                                        "line": 265,
                                        "column": 55
                                      },
                                      "end": {
                                        "line": 265,
                                        "column": 63
                                      }
                                    },
                                    "name": "onClient"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 12192,
                                    "end": 12197,
                                    "loc": {
                                      "start": {
                                        "line": 265,
                                        "column": 65
                                      },
                                      "end": {
                                        "line": 265,
                                        "column": 70
                                      }
                                    },
                                    "value": false,
                                    "rawValue": false,
                                    "raw": "false"
                                  },
                                  "kind": "init"
                                }
                              ]
                            }
                          ]
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " customize ClassCadObject interface add/remove member function to track sketchObjects",
                  "start": 11883,
                  "end": 11970,
                  "loc": {
                    "start": {
                      "line": 261,
                      "column": 4
                    },
                    "end": {
                      "line": 261,
                      "column": 91
                    }
                  },
                  "range": [
                    11883,
                    11970
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 12215,
              "end": 12500,
              "loc": {
                "start": {
                  "line": 268,
                  "column": 4
                },
                "end": {
                  "line": 273,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 12215,
                "end": 12239,
                "loc": {
                  "start": {
                    "line": 268,
                    "column": 4
                  },
                  "end": {
                    "line": 268,
                    "column": 28
                  }
                },
                "name": "removeSuperfluousMembers"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 12239,
                "end": 12500,
                "loc": {
                  "start": {
                    "line": 268,
                    "column": 28
                  },
                  "end": {
                    "line": 273,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 12242,
                  "end": 12500,
                  "loc": {
                    "start": {
                      "line": 268,
                      "column": 31
                    },
                    "end": {
                      "line": 273,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 12253,
                      "end": 12340,
                      "loc": {
                        "start": {
                          "line": 269,
                          "column": 8
                        },
                        "end": {
                          "line": 269,
                          "column": 95
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12257,
                          "end": 12339,
                          "loc": {
                            "start": {
                              "line": 269,
                              "column": 12
                            },
                            "end": {
                              "line": 269,
                              "column": 94
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12257,
                            "end": 12264,
                            "loc": {
                              "start": {
                                "line": 269,
                                "column": 12
                              },
                              "end": {
                                "line": 269,
                                "column": 19
                              }
                            },
                            "name": "members"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 12267,
                            "end": 12339,
                            "loc": {
                              "start": {
                                "line": 269,
                                "column": 22
                              },
                              "end": {
                                "line": 269,
                                "column": 94
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 12267,
                              "end": 12322,
                              "loc": {
                                "start": {
                                  "line": 269,
                                  "column": 22
                                },
                                "end": {
                                  "line": 269,
                                  "column": 77
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 12267,
                                "end": 12316,
                                "loc": {
                                  "start": {
                                    "line": 269,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 269,
                                    "column": 71
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 12267,
                                  "end": 12291,
                                  "loc": {
                                    "start": {
                                      "line": 269,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 269,
                                      "column": 46
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 12267,
                                    "end": 12281,
                                    "loc": {
                                      "start": {
                                        "line": 269,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 269,
                                        "column": 36
                                      }
                                    },
                                    "name": "ClassCadObject"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12282,
                                    "end": 12291,
                                    "loc": {
                                      "start": {
                                        "line": 269,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 269,
                                        "column": 46
                                      }
                                    },
                                    "name": "prototype"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12292,
                                  "end": 12316,
                                  "loc": {
                                    "start": {
                                      "line": 269,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 269,
                                      "column": 71
                                    }
                                  },
                                  "name": "removeSuperfluousMembers"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12317,
                                "end": 12322,
                                "loc": {
                                  "start": {
                                    "line": 269,
                                    "column": 72
                                  },
                                  "end": {
                                    "line": 269,
                                    "column": 77
                                  }
                                },
                                "name": "apply"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 12323,
                                "end": 12327,
                                "loc": {
                                  "start": {
                                    "line": 269,
                                    "column": 78
                                  },
                                  "end": {
                                    "line": 269,
                                    "column": 82
                                  }
                                }
                              },
                              {
                                "type": "Identifier",
                                "start": 12329,
                                "end": 12338,
                                "loc": {
                                  "start": {
                                    "line": 269,
                                    "column": 84
                                  },
                                  "end": {
                                    "line": 269,
                                    "column": 93
                                  }
                                },
                                "name": "arguments"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var",
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "TODO: what the hell do we remove here?!",
                          "start": 12350,
                          "end": 12391,
                          "loc": {
                            "start": {
                              "line": 270,
                              "column": 8
                            },
                            "end": {
                              "line": 270,
                              "column": 49
                            }
                          },
                          "range": [
                            12350,
                            12391
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 12401,
                      "end": 12468,
                      "loc": {
                        "start": {
                          "line": 271,
                          "column": 8
                        },
                        "end": {
                          "line": 271,
                          "column": 75
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 12401,
                        "end": 12467,
                        "loc": {
                          "start": {
                            "line": 271,
                            "column": 8
                          },
                          "end": {
                            "line": 271,
                            "column": 74
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12401,
                          "end": 12422,
                          "loc": {
                            "start": {
                              "line": 271,
                              "column": 8
                            },
                            "end": {
                              "line": 271,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 12401,
                            "end": 12405,
                            "loc": {
                              "start": {
                                "line": 271,
                                "column": 8
                              },
                              "end": {
                                "line": 271,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12406,
                            "end": 12422,
                            "loc": {
                              "start": {
                                "line": 271,
                                "column": 13
                              },
                              "end": {
                                "line": 271,
                                "column": 29
                              }
                            },
                            "name": "removeFromSketch"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 12423,
                            "end": 12430,
                            "loc": {
                              "start": {
                                "line": 271,
                                "column": 30
                              },
                              "end": {
                                "line": 271,
                                "column": 37
                              }
                            },
                            "name": "members"
                          },
                          {
                            "type": "ObjectExpression",
                            "start": 12432,
                            "end": 12466,
                            "loc": {
                              "start": {
                                "line": 271,
                                "column": 39
                              },
                              "end": {
                                "line": 271,
                                "column": 73
                              }
                            },
                            "properties": [
                              {
                                "type": "Property",
                                "start": 12433,
                                "end": 12448,
                                "loc": {
                                  "start": {
                                    "line": 271,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 271,
                                    "column": 55
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 12433,
                                  "end": 12441,
                                  "loc": {
                                    "start": {
                                      "line": 271,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 271,
                                      "column": 48
                                    }
                                  },
                                  "name": "onServer"
                                },
                                "value": {
                                  "type": "Literal",
                                  "start": 12443,
                                  "end": 12448,
                                  "loc": {
                                    "start": {
                                      "line": 271,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 271,
                                      "column": 55
                                    }
                                  },
                                  "value": false,
                                  "rawValue": false,
                                  "raw": "false"
                                },
                                "kind": "init"
                              },
                              {
                                "type": "Property",
                                "start": 12450,
                                "end": 12465,
                                "loc": {
                                  "start": {
                                    "line": 271,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 271,
                                    "column": 72
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 12450,
                                  "end": 12458,
                                  "loc": {
                                    "start": {
                                      "line": 271,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 271,
                                      "column": 65
                                    }
                                  },
                                  "name": "onClient"
                                },
                                "value": {
                                  "type": "Literal",
                                  "start": 12460,
                                  "end": 12465,
                                  "loc": {
                                    "start": {
                                      "line": 271,
                                      "column": 67
                                    },
                                    "end": {
                                      "line": 271,
                                      "column": 72
                                    }
                                  },
                                  "value": false,
                                  "rawValue": false,
                                  "raw": "false"
                                },
                                "kind": "init"
                              }
                            ]
                          }
                        ],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "TODO: what the hell do we remove here?!",
                          "start": 12350,
                          "end": 12391,
                          "loc": {
                            "start": {
                              "line": 270,
                              "column": 8
                            },
                            "end": {
                              "line": 270,
                              "column": 49
                            }
                          },
                          "range": [
                            12350,
                            12391
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 12478,
                      "end": 12493,
                      "loc": {
                        "start": {
                          "line": 272,
                          "column": 8
                        },
                        "end": {
                          "line": 272,
                          "column": 23
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 12485,
                        "end": 12492,
                        "loc": {
                          "start": {
                            "line": 272,
                            "column": 15
                          },
                          "end": {
                            "line": 272,
                            "column": 22
                          }
                        },
                        "name": "members"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 12508,
              "end": 12566,
              "loc": {
                "start": {
                  "line": 275,
                  "column": 4
                },
                "end": {
                  "line": 277,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 12508,
                "end": 12515,
                "loc": {
                  "start": {
                    "line": 275,
                    "column": 4
                  },
                  "end": {
                    "line": 275,
                    "column": 11
                  }
                },
                "name": "showBox"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 12515,
                "end": 12566,
                "loc": {
                  "start": {
                    "line": 275,
                    "column": 11
                  },
                  "end": {
                    "line": 277,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 12518,
                  "end": 12566,
                  "loc": {
                    "start": {
                      "line": 275,
                      "column": 14
                    },
                    "end": {
                      "line": 277,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 12529,
                      "end": 12559,
                      "loc": {
                        "start": {
                          "line": 276,
                          "column": 8
                        },
                        "end": {
                          "line": 276,
                          "column": 38
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 12529,
                        "end": 12558,
                        "loc": {
                          "start": {
                            "line": 276,
                            "column": 8
                          },
                          "end": {
                            "line": 276,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12529,
                          "end": 12546,
                          "loc": {
                            "start": {
                              "line": 276,
                              "column": 8
                            },
                            "end": {
                              "line": 276,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 12529,
                            "end": 12533,
                            "loc": {
                              "start": {
                                "line": 276,
                                "column": 8
                              },
                              "end": {
                                "line": 276,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12534,
                            "end": 12546,
                            "loc": {
                              "start": {
                                "line": 276,
                                "column": 13
                              },
                              "end": {
                                "line": 276,
                                "column": 25
                              }
                            },
                            "name": "addAuxObject"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 12547,
                            "end": 12557,
                            "loc": {
                              "start": {
                                "line": 276,
                                "column": 26
                              },
                              "end": {
                                "line": 276,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 12547,
                              "end": 12551,
                              "loc": {
                                "start": {
                                  "line": 276,
                                  "column": 26
                                },
                                "end": {
                                  "line": 276,
                                  "column": 30
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12552,
                              "end": 12557,
                              "loc": {
                                "start": {
                                  "line": 276,
                                  "column": 31
                                },
                                "end": {
                                  "line": 276,
                                  "column": 36
                                }
                              },
                              "name": "__box"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 12574,
              "end": 12635,
              "loc": {
                "start": {
                  "line": 279,
                  "column": 4
                },
                "end": {
                  "line": 281,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 12574,
                "end": 12581,
                "loc": {
                  "start": {
                    "line": 279,
                    "column": 4
                  },
                  "end": {
                    "line": 279,
                    "column": 11
                  }
                },
                "name": "hideBox"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 12581,
                "end": 12635,
                "loc": {
                  "start": {
                    "line": 279,
                    "column": 11
                  },
                  "end": {
                    "line": 281,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 12584,
                  "end": 12635,
                  "loc": {
                    "start": {
                      "line": 279,
                      "column": 14
                    },
                    "end": {
                      "line": 281,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 12595,
                      "end": 12628,
                      "loc": {
                        "start": {
                          "line": 280,
                          "column": 8
                        },
                        "end": {
                          "line": 280,
                          "column": 41
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 12595,
                        "end": 12627,
                        "loc": {
                          "start": {
                            "line": 280,
                            "column": 8
                          },
                          "end": {
                            "line": 280,
                            "column": 40
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12595,
                          "end": 12615,
                          "loc": {
                            "start": {
                              "line": 280,
                              "column": 8
                            },
                            "end": {
                              "line": 280,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 12595,
                            "end": 12599,
                            "loc": {
                              "start": {
                                "line": 280,
                                "column": 8
                              },
                              "end": {
                                "line": 280,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12600,
                            "end": 12615,
                            "loc": {
                              "start": {
                                "line": 280,
                                "column": 13
                              },
                              "end": {
                                "line": 280,
                                "column": 28
                              }
                            },
                            "name": "removeAuxObject"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 12616,
                            "end": 12626,
                            "loc": {
                              "start": {
                                "line": 280,
                                "column": 29
                              },
                              "end": {
                                "line": 280,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 12616,
                              "end": 12620,
                              "loc": {
                                "start": {
                                  "line": 280,
                                  "column": 29
                                },
                                "end": {
                                  "line": 280,
                                  "column": 33
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12621,
                              "end": 12626,
                              "loc": {
                                "start": {
                                  "line": 280,
                                  "column": 34
                                },
                                "end": {
                                  "line": 280,
                                  "column": 39
                                }
                              },
                              "name": "__box"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 12643,
              "end": 13847,
              "loc": {
                "start": {
                  "line": 283,
                  "column": 4
                },
                "end": {
                  "line": 316,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 12643,
                "end": 12652,
                "loc": {
                  "start": {
                    "line": 283,
                    "column": 4
                  },
                  "end": {
                    "line": 283,
                    "column": 13
                  }
                },
                "name": "updateBox"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 12652,
                "end": 13847,
                "loc": {
                  "start": {
                    "line": 283,
                    "column": 13
                  },
                  "end": {
                    "line": 316,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 12655,
                  "end": 13847,
                  "loc": {
                    "start": {
                      "line": 283,
                      "column": 16
                    },
                    "end": {
                      "line": 316,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 12666,
                      "end": 12691,
                      "loc": {
                        "start": {
                          "line": 284,
                          "column": 8
                        },
                        "end": {
                          "line": 284,
                          "column": 33
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 12666,
                        "end": 12690,
                        "loc": {
                          "start": {
                            "line": 284,
                            "column": 8
                          },
                          "end": {
                            "line": 284,
                            "column": 32
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12666,
                          "end": 12688,
                          "loc": {
                            "start": {
                              "line": 284,
                              "column": 8
                            },
                            "end": {
                              "line": 284,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 12666,
                            "end": 12670,
                            "loc": {
                              "start": {
                                "line": 284,
                                "column": 8
                              },
                              "end": {
                                "line": 284,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12671,
                            "end": 12688,
                            "loc": {
                              "start": {
                                "line": 284,
                                "column": 13
                              },
                              "end": {
                                "line": 284,
                                "column": 30
                              }
                            },
                            "name": "updateMatrixWorld"
                          },
                          "computed": false
                        },
                        "arguments": []
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " bbox is bounding box in local to sketch coordinates",
                          "start": 12701,
                          "end": 12755,
                          "loc": {
                            "start": {
                              "line": 285,
                              "column": 8
                            },
                            "end": {
                              "line": 285,
                              "column": 62
                            }
                          },
                          "range": [
                            12701,
                            12755
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 12765,
                      "end": 12793,
                      "loc": {
                        "start": {
                          "line": 286,
                          "column": 8
                        },
                        "end": {
                          "line": 286,
                          "column": 36
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12769,
                          "end": 12792,
                          "loc": {
                            "start": {
                              "line": 286,
                              "column": 12
                            },
                            "end": {
                              "line": 286,
                              "column": 35
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12769,
                            "end": 12773,
                            "loc": {
                              "start": {
                                "line": 286,
                                "column": 12
                              },
                              "end": {
                                "line": 286,
                                "column": 16
                              }
                            },
                            "name": "bbox",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 12776,
                            "end": 12792,
                            "loc": {
                              "start": {
                                "line": 286,
                                "column": 19
                              },
                              "end": {
                                "line": 286,
                                "column": 35
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 12780,
                              "end": 12790,
                              "loc": {
                                "start": {
                                  "line": 286,
                                  "column": 23
                                },
                                "end": {
                                  "line": 286,
                                  "column": 33
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 12780,
                                "end": 12785,
                                "loc": {
                                  "start": {
                                    "line": 286,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 286,
                                    "column": 28
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12786,
                                "end": 12790,
                                "loc": {
                                  "start": {
                                    "line": 286,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 286,
                                    "column": 33
                                  }
                                },
                                "name": "Box3"
                              },
                              "computed": false
                            },
                            "arguments": []
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "var",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " bbox is bounding box in local to sketch coordinates",
                          "start": 12701,
                          "end": 12755,
                          "loc": {
                            "start": {
                              "line": 285,
                              "column": 8
                            },
                            "end": {
                              "line": 285,
                              "column": 62
                            }
                          },
                          "range": [
                            12701,
                            12755
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 12803,
                      "end": 12832,
                      "loc": {
                        "start": {
                          "line": 287,
                          "column": 8
                        },
                        "end": {
                          "line": 287,
                          "column": 37
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12807,
                          "end": 12831,
                          "loc": {
                            "start": {
                              "line": 287,
                              "column": 12
                            },
                            "end": {
                              "line": 287,
                              "column": 36
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12807,
                            "end": 12809,
                            "loc": {
                              "start": {
                                "line": 287,
                                "column": 12
                              },
                              "end": {
                                "line": 287,
                                "column": 14
                              }
                            },
                            "name": "v1"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 12812,
                            "end": 12831,
                            "loc": {
                              "start": {
                                "line": 287,
                                "column": 17
                              },
                              "end": {
                                "line": 287,
                                "column": 36
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 12816,
                              "end": 12829,
                              "loc": {
                                "start": {
                                  "line": 287,
                                  "column": 21
                                },
                                "end": {
                                  "line": 287,
                                  "column": 34
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 12816,
                                "end": 12821,
                                "loc": {
                                  "start": {
                                    "line": 287,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 287,
                                    "column": 26
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12822,
                                "end": 12829,
                                "loc": {
                                  "start": {
                                    "line": 287,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 287,
                                    "column": 34
                                  }
                                },
                                "name": "Vector3"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 12842,
                      "end": 13327,
                      "loc": {
                        "start": {
                          "line": 288,
                          "column": 8
                        },
                        "end": {
                          "line": 298,
                          "column": 12
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 12842,
                        "end": 13326,
                        "loc": {
                          "start": {
                            "line": 288,
                            "column": 8
                          },
                          "end": {
                            "line": 298,
                            "column": 11
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12842,
                          "end": 12875,
                          "loc": {
                            "start": {
                              "line": 288,
                              "column": 8
                            },
                            "end": {
                              "line": 288,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 12842,
                            "end": 12867,
                            "loc": {
                              "start": {
                                "line": 288,
                                "column": 8
                              },
                              "end": {
                                "line": 288,
                                "column": 33
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 12842,
                              "end": 12865,
                              "loc": {
                                "start": {
                                  "line": 288,
                                  "column": 8
                                },
                                "end": {
                                  "line": 288,
                                  "column": 31
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 12842,
                                "end": 12846,
                                "loc": {
                                  "start": {
                                    "line": 288,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 288,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12847,
                                "end": 12865,
                                "loc": {
                                  "start": {
                                    "line": 288,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 288,
                                    "column": 31
                                  }
                                },
                                "name": "getObjectsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": []
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12868,
                            "end": 12875,
                            "loc": {
                              "start": {
                                "line": 288,
                                "column": 34
                              },
                              "end": {
                                "line": 288,
                                "column": 41
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 12876,
                            "end": 13325,
                            "loc": {
                              "start": {
                                "line": 288,
                                "column": 42
                              },
                              "end": {
                                "line": 298,
                                "column": 10
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 12876,
                                "end": 12879,
                                "loc": {
                                  "start": {
                                    "line": 288,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 288,
                                    "column": 45
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 12883,
                              "end": 13325,
                              "loc": {
                                "start": {
                                  "line": 288,
                                  "column": 49
                                },
                                "end": {
                                  "line": 298,
                                  "column": 10
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 12883,
                                "end": 12902,
                                "loc": {
                                  "start": {
                                    "line": 288,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 288,
                                    "column": 68
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 12883,
                                  "end": 12886,
                                  "loc": {
                                    "start": {
                                      "line": 288,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 288,
                                      "column": 52
                                    }
                                  },
                                  "name": "obj"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12887,
                                  "end": 12902,
                                  "loc": {
                                    "start": {
                                      "line": 288,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 288,
                                      "column": 68
                                    }
                                  },
                                  "name": "traverseVisible"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ArrowFunctionExpression",
                                  "start": 12903,
                                  "end": 13324,
                                  "loc": {
                                    "start": {
                                      "line": 288,
                                      "column": 69
                                    },
                                    "end": {
                                      "line": 298,
                                      "column": 9
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 12903,
                                      "end": 12907,
                                      "loc": {
                                        "start": {
                                          "line": 288,
                                          "column": 69
                                        },
                                        "end": {
                                          "line": 288,
                                          "column": 73
                                        }
                                      },
                                      "name": "node"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 12911,
                                    "end": 13324,
                                    "loc": {
                                      "start": {
                                        "line": 288,
                                        "column": 77
                                      },
                                      "end": {
                                        "line": 298,
                                        "column": 9
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "IfStatement",
                                        "start": 12926,
                                        "end": 12998,
                                        "loc": {
                                          "start": {
                                            "line": 289,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 290,
                                            "column": 23
                                          }
                                        },
                                        "test": {
                                          "type": "UnaryExpression",
                                          "start": 12930,
                                          "end": 12972,
                                          "loc": {
                                            "start": {
                                              "line": 289,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 289,
                                              "column": 58
                                            }
                                          },
                                          "operator": "!",
                                          "prefix": true,
                                          "argument": {
                                            "type": "BinaryExpression",
                                            "start": 12932,
                                            "end": 12971,
                                            "loc": {
                                              "start": {
                                                "line": 289,
                                                "column": 18
                                              },
                                              "end": {
                                                "line": 289,
                                                "column": 57
                                              }
                                            },
                                            "left": {
                                              "type": "MemberExpression",
                                              "start": 12932,
                                              "end": 12945,
                                              "loc": {
                                                "start": {
                                                  "line": 289,
                                                  "column": 18
                                                },
                                                "end": {
                                                  "line": 289,
                                                  "column": 31
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 12932,
                                                "end": 12936,
                                                "loc": {
                                                  "start": {
                                                    "line": 289,
                                                    "column": 18
                                                  },
                                                  "end": {
                                                    "line": 289,
                                                    "column": 22
                                                  }
                                                },
                                                "name": "node"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 12937,
                                                "end": 12945,
                                                "loc": {
                                                  "start": {
                                                    "line": 289,
                                                    "column": 23
                                                  },
                                                  "end": {
                                                    "line": 289,
                                                    "column": 31
                                                  }
                                                },
                                                "name": "geometry"
                                              },
                                              "computed": false
                                            },
                                            "operator": "instanceof",
                                            "right": {
                                              "type": "MemberExpression",
                                              "start": 12957,
                                              "end": 12971,
                                              "loc": {
                                                "start": {
                                                  "line": 289,
                                                  "column": 43
                                                },
                                                "end": {
                                                  "line": 289,
                                                  "column": 57
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 12957,
                                                "end": 12962,
                                                "loc": {
                                                  "start": {
                                                    "line": 289,
                                                    "column": 43
                                                  },
                                                  "end": {
                                                    "line": 289,
                                                    "column": 48
                                                  }
                                                },
                                                "name": "THREE"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 12963,
                                                "end": 12971,
                                                "loc": {
                                                  "start": {
                                                    "line": 289,
                                                    "column": 49
                                                  },
                                                  "end": {
                                                    "line": 289,
                                                    "column": 57
                                                  }
                                                },
                                                "name": "Geometry"
                                              },
                                              "computed": false
                                            },
                                            "parenthesizedExpression": true
                                          }
                                        },
                                        "consequent": {
                                          "type": "ReturnStatement",
                                          "start": 12991,
                                          "end": 12998,
                                          "loc": {
                                            "start": {
                                              "line": 290,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 290,
                                              "column": 23
                                            }
                                          },
                                          "argument": null
                                        },
                                        "alternate": null
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 13012,
                                        "end": 13313,
                                        "loc": {
                                          "start": {
                                            "line": 291,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 297,
                                            "column": 15
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 13012,
                                          "end": 13312,
                                          "loc": {
                                            "start": {
                                              "line": 291,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 297,
                                              "column": 14
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 13012,
                                            "end": 13042,
                                            "loc": {
                                              "start": {
                                                "line": 291,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 291,
                                                "column": 42
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 13012,
                                              "end": 13034,
                                              "loc": {
                                                "start": {
                                                  "line": 291,
                                                  "column": 12
                                                },
                                                "end": {
                                                  "line": 291,
                                                  "column": 34
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 13012,
                                                "end": 13025,
                                                "loc": {
                                                  "start": {
                                                    "line": 291,
                                                    "column": 12
                                                  },
                                                  "end": {
                                                    "line": 291,
                                                    "column": 25
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 13012,
                                                  "end": 13016,
                                                  "loc": {
                                                    "start": {
                                                      "line": 291,
                                                      "column": 12
                                                    },
                                                    "end": {
                                                      "line": 291,
                                                      "column": 16
                                                    }
                                                  },
                                                  "name": "node"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 13017,
                                                  "end": 13025,
                                                  "loc": {
                                                    "start": {
                                                      "line": 291,
                                                      "column": 17
                                                    },
                                                    "end": {
                                                      "line": 291,
                                                      "column": 25
                                                    }
                                                  },
                                                  "name": "geometry"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 13026,
                                                "end": 13034,
                                                "loc": {
                                                  "start": {
                                                    "line": 291,
                                                    "column": 26
                                                  },
                                                  "end": {
                                                    "line": 291,
                                                    "column": 34
                                                  }
                                                },
                                                "name": "vertices"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 13035,
                                              "end": 13042,
                                              "loc": {
                                                "start": {
                                                  "line": 291,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 291,
                                                  "column": 42
                                                }
                                              },
                                              "name": "forEach"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "ArrowFunctionExpression",
                                              "start": 13043,
                                              "end": 13311,
                                              "loc": {
                                                "start": {
                                                  "line": 291,
                                                  "column": 43
                                                },
                                                "end": {
                                                  "line": 297,
                                                  "column": 13
                                                }
                                              },
                                              "id": null,
                                              "generator": false,
                                              "expression": false,
                                              "async": false,
                                              "params": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 13043,
                                                  "end": 13049,
                                                  "loc": {
                                                    "start": {
                                                      "line": 291,
                                                      "column": 43
                                                    },
                                                    "end": {
                                                      "line": 291,
                                                      "column": 49
                                                    }
                                                  },
                                                  "name": "vertex"
                                                }
                                              ],
                                              "body": {
                                                "type": "BlockStatement",
                                                "start": 13053,
                                                "end": 13311,
                                                "loc": {
                                                  "start": {
                                                    "line": 291,
                                                    "column": 53
                                                  },
                                                  "end": {
                                                    "line": 297,
                                                    "column": 13
                                                  }
                                                },
                                                "body": [
                                                  {
                                                    "type": "ExpressionStatement",
                                                    "start": 13159,
                                                    "end": 13175,
                                                    "loc": {
                                                      "start": {
                                                        "line": 293,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 293,
                                                        "column": 32
                                                      }
                                                    },
                                                    "expression": {
                                                      "type": "CallExpression",
                                                      "start": 13159,
                                                      "end": 13174,
                                                      "loc": {
                                                        "start": {
                                                          "line": 293,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 293,
                                                          "column": 31
                                                        }
                                                      },
                                                      "callee": {
                                                        "type": "MemberExpression",
                                                        "start": 13159,
                                                        "end": 13166,
                                                        "loc": {
                                                          "start": {
                                                            "line": 293,
                                                            "column": 16
                                                          },
                                                          "end": {
                                                            "line": 293,
                                                            "column": 23
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 13159,
                                                          "end": 13161,
                                                          "loc": {
                                                            "start": {
                                                              "line": 293,
                                                              "column": 16
                                                            },
                                                            "end": {
                                                              "line": 293,
                                                              "column": 18
                                                            }
                                                          },
                                                          "name": "v1",
                                                          "leadingComments": null
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 13162,
                                                          "end": 13166,
                                                          "loc": {
                                                            "start": {
                                                              "line": 293,
                                                              "column": 19
                                                            },
                                                            "end": {
                                                              "line": 293,
                                                              "column": 23
                                                            }
                                                          },
                                                          "name": "copy"
                                                        },
                                                        "computed": false,
                                                        "leadingComments": null
                                                      },
                                                      "arguments": [
                                                        {
                                                          "type": "Identifier",
                                                          "start": 13167,
                                                          "end": 13173,
                                                          "loc": {
                                                            "start": {
                                                              "line": 293,
                                                              "column": 24
                                                            },
                                                            "end": {
                                                              "line": 293,
                                                              "column": 30
                                                            }
                                                          },
                                                          "name": "vertex"
                                                        }
                                                      ],
                                                      "leadingComments": null
                                                    },
                                                    "leadingComments": [
                                                      {
                                                        "type": "CommentLine",
                                                        "value": " translate vertex coordinates from local-to-node to local-to-sketch",
                                                        "start": 13072,
                                                        "end": 13141,
                                                        "loc": {
                                                          "start": {
                                                            "line": 292,
                                                            "column": 16
                                                          },
                                                          "end": {
                                                            "line": 292,
                                                            "column": 85
                                                          }
                                                        },
                                                        "range": [
                                                          13072,
                                                          13141
                                                        ]
                                                      }
                                                    ]
                                                  },
                                                  {
                                                    "type": "ExpressionStatement",
                                                    "start": 13193,
                                                    "end": 13215,
                                                    "loc": {
                                                      "start": {
                                                        "line": 294,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 294,
                                                        "column": 38
                                                      }
                                                    },
                                                    "expression": {
                                                      "type": "CallExpression",
                                                      "start": 13193,
                                                      "end": 13214,
                                                      "loc": {
                                                        "start": {
                                                          "line": 294,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 294,
                                                          "column": 37
                                                        }
                                                      },
                                                      "callee": {
                                                        "type": "MemberExpression",
                                                        "start": 13193,
                                                        "end": 13210,
                                                        "loc": {
                                                          "start": {
                                                            "line": 294,
                                                            "column": 16
                                                          },
                                                          "end": {
                                                            "line": 294,
                                                            "column": 33
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 13193,
                                                          "end": 13197,
                                                          "loc": {
                                                            "start": {
                                                              "line": 294,
                                                              "column": 16
                                                            },
                                                            "end": {
                                                              "line": 294,
                                                              "column": 20
                                                            }
                                                          },
                                                          "name": "node"
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 13198,
                                                          "end": 13210,
                                                          "loc": {
                                                            "start": {
                                                              "line": 294,
                                                              "column": 21
                                                            },
                                                            "end": {
                                                              "line": 294,
                                                              "column": 33
                                                            }
                                                          },
                                                          "name": "localToWorld"
                                                        },
                                                        "computed": false
                                                      },
                                                      "arguments": [
                                                        {
                                                          "type": "Identifier",
                                                          "start": 13211,
                                                          "end": 13213,
                                                          "loc": {
                                                            "start": {
                                                              "line": 294,
                                                              "column": 34
                                                            },
                                                            "end": {
                                                              "line": 294,
                                                              "column": 36
                                                            }
                                                          },
                                                          "name": "v1"
                                                        }
                                                      ]
                                                    }
                                                  },
                                                  {
                                                    "type": "ExpressionStatement",
                                                    "start": 13233,
                                                    "end": 13255,
                                                    "loc": {
                                                      "start": {
                                                        "line": 295,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 295,
                                                        "column": 38
                                                      }
                                                    },
                                                    "expression": {
                                                      "type": "CallExpression",
                                                      "start": 13233,
                                                      "end": 13254,
                                                      "loc": {
                                                        "start": {
                                                          "line": 295,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 295,
                                                          "column": 37
                                                        }
                                                      },
                                                      "callee": {
                                                        "type": "MemberExpression",
                                                        "start": 13233,
                                                        "end": 13250,
                                                        "loc": {
                                                          "start": {
                                                            "line": 295,
                                                            "column": 16
                                                          },
                                                          "end": {
                                                            "line": 295,
                                                            "column": 33
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "ThisExpression",
                                                          "start": 13233,
                                                          "end": 13237,
                                                          "loc": {
                                                            "start": {
                                                              "line": 295,
                                                              "column": 16
                                                            },
                                                            "end": {
                                                              "line": 295,
                                                              "column": 20
                                                            }
                                                          }
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 13238,
                                                          "end": 13250,
                                                          "loc": {
                                                            "start": {
                                                              "line": 295,
                                                              "column": 21
                                                            },
                                                            "end": {
                                                              "line": 295,
                                                              "column": 33
                                                            }
                                                          },
                                                          "name": "worldToLocal"
                                                        },
                                                        "computed": false
                                                      },
                                                      "arguments": [
                                                        {
                                                          "type": "Identifier",
                                                          "start": 13251,
                                                          "end": 13253,
                                                          "loc": {
                                                            "start": {
                                                              "line": 295,
                                                              "column": 34
                                                            },
                                                            "end": {
                                                              "line": 295,
                                                              "column": 36
                                                            }
                                                          },
                                                          "name": "v1"
                                                        }
                                                      ]
                                                    }
                                                  },
                                                  {
                                                    "type": "ExpressionStatement",
                                                    "start": 13273,
                                                    "end": 13296,
                                                    "loc": {
                                                      "start": {
                                                        "line": 296,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 296,
                                                        "column": 39
                                                      }
                                                    },
                                                    "expression": {
                                                      "type": "CallExpression",
                                                      "start": 13273,
                                                      "end": 13295,
                                                      "loc": {
                                                        "start": {
                                                          "line": 296,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 296,
                                                          "column": 38
                                                        }
                                                      },
                                                      "callee": {
                                                        "type": "MemberExpression",
                                                        "start": 13273,
                                                        "end": 13291,
                                                        "loc": {
                                                          "start": {
                                                            "line": 296,
                                                            "column": 16
                                                          },
                                                          "end": {
                                                            "line": 296,
                                                            "column": 34
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 13273,
                                                          "end": 13277,
                                                          "loc": {
                                                            "start": {
                                                              "line": 296,
                                                              "column": 16
                                                            },
                                                            "end": {
                                                              "line": 296,
                                                              "column": 20
                                                            }
                                                          },
                                                          "name": "bbox"
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 13278,
                                                          "end": 13291,
                                                          "loc": {
                                                            "start": {
                                                              "line": 296,
                                                              "column": 21
                                                            },
                                                            "end": {
                                                              "line": 296,
                                                              "column": 34
                                                            }
                                                          },
                                                          "name": "expandByPoint"
                                                        },
                                                        "computed": false
                                                      },
                                                      "arguments": [
                                                        {
                                                          "type": "Identifier",
                                                          "start": 13292,
                                                          "end": 13294,
                                                          "loc": {
                                                            "start": {
                                                              "line": 296,
                                                              "column": 35
                                                            },
                                                            "end": {
                                                              "line": 296,
                                                              "column": 37
                                                            }
                                                          },
                                                          "name": "v1"
                                                        }
                                                      ]
                                                    }
                                                  }
                                                ]
                                              }
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 13339,
                      "end": 13364,
                      "loc": {
                        "start": {
                          "line": 300,
                          "column": 8
                        },
                        "end": {
                          "line": 300,
                          "column": 33
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 13343,
                          "end": 13363,
                          "loc": {
                            "start": {
                              "line": 300,
                              "column": 12
                            },
                            "end": {
                              "line": 300,
                              "column": 32
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 13343,
                            "end": 13350,
                            "loc": {
                              "start": {
                                "line": 300,
                                "column": 12
                              },
                              "end": {
                                "line": 300,
                                "column": 19
                              }
                            },
                            "name": "thisBox"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 13353,
                            "end": 13363,
                            "loc": {
                              "start": {
                                "line": 300,
                                "column": 22
                              },
                              "end": {
                                "line": 300,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 13353,
                              "end": 13357,
                              "loc": {
                                "start": {
                                  "line": 300,
                                  "column": 22
                                },
                                "end": {
                                  "line": 300,
                                  "column": 26
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13358,
                              "end": 13363,
                              "loc": {
                                "start": {
                                  "line": 300,
                                  "column": 27
                                },
                                "end": {
                                  "line": 300,
                                  "column": 32
                                }
                              },
                              "name": "__box"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13374,
                      "end": 13415,
                      "loc": {
                        "start": {
                          "line": 301,
                          "column": 8
                        },
                        "end": {
                          "line": 301,
                          "column": 49
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 13374,
                        "end": 13414,
                        "loc": {
                          "start": {
                            "line": 301,
                            "column": 8
                          },
                          "end": {
                            "line": 301,
                            "column": 48
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 13374,
                          "end": 13390,
                          "loc": {
                            "start": {
                              "line": 301,
                              "column": 8
                            },
                            "end": {
                              "line": 301,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 13374,
                            "end": 13381,
                            "loc": {
                              "start": {
                                "line": 301,
                                "column": 8
                              },
                              "end": {
                                "line": 301,
                                "column": 15
                              }
                            },
                            "name": "thisBox"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13382,
                            "end": 13390,
                            "loc": {
                              "start": {
                                "line": 301,
                                "column": 16
                              },
                              "end": {
                                "line": 301,
                                "column": 24
                              }
                            },
                            "name": "material"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 13393,
                          "end": 13414,
                          "loc": {
                            "start": {
                              "line": 301,
                              "column": 27
                            },
                            "end": {
                              "line": 301,
                              "column": 48
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 13393,
                            "end": 13397,
                            "loc": {
                              "start": {
                                "line": 301,
                                "column": 27
                              },
                              "end": {
                                "line": 301,
                                "column": 31
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13398,
                            "end": 13414,
                            "loc": {
                              "start": {
                                "line": 301,
                                "column": 32
                              },
                              "end": {
                                "line": 301,
                                "column": 48
                              }
                            },
                            "name": "frameBoxMaterial"
                          },
                          "computed": false
                        }
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 13427,
                      "end": 13840,
                      "loc": {
                        "start": {
                          "line": 303,
                          "column": 8
                        },
                        "end": {
                          "line": 315,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 13431,
                        "end": 13445,
                        "loc": {
                          "start": {
                            "line": 303,
                            "column": 12
                          },
                          "end": {
                            "line": 303,
                            "column": 26
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13431,
                          "end": 13443,
                          "loc": {
                            "start": {
                              "line": 303,
                              "column": 12
                            },
                            "end": {
                              "line": 303,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 13431,
                            "end": 13435,
                            "loc": {
                              "start": {
                                "line": 303,
                                "column": 12
                              },
                              "end": {
                                "line": 303,
                                "column": 16
                              }
                            },
                            "name": "bbox"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13436,
                            "end": 13443,
                            "loc": {
                              "start": {
                                "line": 303,
                                "column": 17
                              },
                              "end": {
                                "line": 303,
                                "column": 24
                              }
                            },
                            "name": "isEmpty"
                          },
                          "computed": false
                        },
                        "arguments": []
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 13447,
                        "end": 13589,
                        "loc": {
                          "start": {
                            "line": 303,
                            "column": 28
                          },
                          "end": {
                            "line": 307,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 13498,
                            "end": 13534,
                            "loc": {
                              "start": {
                                "line": 305,
                                "column": 12
                              },
                              "end": {
                                "line": 305,
                                "column": 48
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 13498,
                              "end": 13533,
                              "loc": {
                                "start": {
                                  "line": 305,
                                  "column": 12
                                },
                                "end": {
                                  "line": 305,
                                  "column": 47
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 13498,
                                "end": 13515,
                                "loc": {
                                  "start": {
                                    "line": 305,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 305,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 13498,
                                  "end": 13511,
                                  "loc": {
                                    "start": {
                                      "line": 305,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 305,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 13498,
                                    "end": 13505,
                                    "loc": {
                                      "start": {
                                        "line": 305,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 305,
                                        "column": 19
                                      }
                                    },
                                    "name": "thisBox",
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 13506,
                                    "end": 13511,
                                    "loc": {
                                      "start": {
                                        "line": 305,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 305,
                                        "column": 25
                                      }
                                    },
                                    "name": "scale"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13512,
                                  "end": 13515,
                                  "loc": {
                                    "start": {
                                      "line": 305,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 305,
                                      "column": 29
                                    }
                                  },
                                  "name": "set"
                                },
                                "computed": false,
                                "leadingComments": null
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 13516,
                                  "end": 13520,
                                  "loc": {
                                    "start": {
                                      "line": 305,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 305,
                                      "column": 34
                                    }
                                  },
                                  "value": 0.001,
                                  "rawValue": 0.001,
                                  "raw": "1e-3"
                                },
                                {
                                  "type": "Literal",
                                  "start": 13522,
                                  "end": 13526,
                                  "loc": {
                                    "start": {
                                      "line": 305,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 305,
                                      "column": 40
                                    }
                                  },
                                  "value": 0.001,
                                  "rawValue": 0.001,
                                  "raw": "1e-3"
                                },
                                {
                                  "type": "Literal",
                                  "start": 13528,
                                  "end": 13532,
                                  "loc": {
                                    "start": {
                                      "line": 305,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 305,
                                      "column": 46
                                    }
                                  },
                                  "value": 0.001,
                                  "rawValue": 0.001,
                                  "raw": "1e-3"
                                }
                              ],
                              "leadingComments": null
                            },
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " (nothing on sketch)",
                                "start": 13462,
                                "end": 13484,
                                "loc": {
                                  "start": {
                                    "line": 304,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 304,
                                    "column": 34
                                  }
                                },
                                "range": [
                                  13462,
                                  13484
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 13548,
                            "end": 13578,
                            "loc": {
                              "start": {
                                "line": 306,
                                "column": 12
                              },
                              "end": {
                                "line": 306,
                                "column": 42
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 13548,
                              "end": 13577,
                              "loc": {
                                "start": {
                                  "line": 306,
                                  "column": 12
                                },
                                "end": {
                                  "line": 306,
                                  "column": 41
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 13548,
                                "end": 13568,
                                "loc": {
                                  "start": {
                                    "line": 306,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 306,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 13548,
                                  "end": 13564,
                                  "loc": {
                                    "start": {
                                      "line": 306,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 306,
                                      "column": 28
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 13548,
                                    "end": 13555,
                                    "loc": {
                                      "start": {
                                        "line": 306,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 306,
                                        "column": 19
                                      }
                                    },
                                    "name": "thisBox"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 13556,
                                    "end": 13564,
                                    "loc": {
                                      "start": {
                                        "line": 306,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 306,
                                        "column": 28
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13565,
                                  "end": 13568,
                                  "loc": {
                                    "start": {
                                      "line": 306,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 306,
                                      "column": 32
                                    }
                                  },
                                  "name": "set"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 13569,
                                  "end": 13570,
                                  "loc": {
                                    "start": {
                                      "line": 306,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 306,
                                      "column": 34
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 13572,
                                  "end": 13573,
                                  "loc": {
                                    "start": {
                                      "line": 306,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 306,
                                      "column": 37
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 13575,
                                  "end": 13576,
                                  "loc": {
                                    "start": {
                                      "line": 306,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 306,
                                      "column": 40
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          }
                        ]
                      },
                      "alternate": {
                        "type": "BlockStatement",
                        "start": 13604,
                        "end": 13840,
                        "loc": {
                          "start": {
                            "line": 308,
                            "column": 13
                          },
                          "end": {
                            "line": 315,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 13648,
                            "end": 13667,
                            "loc": {
                              "start": {
                                "line": 310,
                                "column": 12
                              },
                              "end": {
                                "line": 310,
                                "column": 31
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 13648,
                              "end": 13666,
                              "loc": {
                                "start": {
                                  "line": 310,
                                  "column": 12
                                },
                                "end": {
                                  "line": 310,
                                  "column": 30
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 13648,
                                "end": 13658,
                                "loc": {
                                  "start": {
                                    "line": 310,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 310,
                                    "column": 22
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 13648,
                                  "end": 13656,
                                  "loc": {
                                    "start": {
                                      "line": 310,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 310,
                                      "column": 20
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 13648,
                                    "end": 13652,
                                    "loc": {
                                      "start": {
                                        "line": 310,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 310,
                                        "column": 16
                                      }
                                    },
                                    "name": "bbox",
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 13653,
                                    "end": 13656,
                                    "loc": {
                                      "start": {
                                        "line": 310,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 310,
                                        "column": 20
                                      }
                                    },
                                    "name": "min"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13657,
                                  "end": 13658,
                                  "loc": {
                                    "start": {
                                      "line": 310,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 310,
                                      "column": 22
                                    }
                                  },
                                  "name": "z"
                                },
                                "computed": false,
                                "leadingComments": null
                              },
                              "right": {
                                "type": "UnaryExpression",
                                "start": 13661,
                                "end": 13666,
                                "loc": {
                                  "start": {
                                    "line": 310,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 310,
                                    "column": 30
                                  }
                                },
                                "operator": "-",
                                "prefix": true,
                                "argument": {
                                  "type": "Literal",
                                  "start": 13662,
                                  "end": 13666,
                                  "loc": {
                                    "start": {
                                      "line": 310,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 310,
                                      "column": 30
                                    }
                                  },
                                  "value": 0.001,
                                  "rawValue": 0.001,
                                  "raw": "1e-3"
                                }
                              },
                              "leadingComments": null
                            },
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": "make box flat",
                                "start": 13619,
                                "end": 13634,
                                "loc": {
                                  "start": {
                                    "line": 309,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 309,
                                    "column": 27
                                  }
                                },
                                "range": [
                                  13619,
                                  13634
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 13681,
                            "end": 13699,
                            "loc": {
                              "start": {
                                "line": 311,
                                "column": 12
                              },
                              "end": {
                                "line": 311,
                                "column": 30
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 13681,
                              "end": 13698,
                              "loc": {
                                "start": {
                                  "line": 311,
                                  "column": 12
                                },
                                "end": {
                                  "line": 311,
                                  "column": 29
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 13681,
                                "end": 13691,
                                "loc": {
                                  "start": {
                                    "line": 311,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 311,
                                    "column": 22
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 13681,
                                  "end": 13689,
                                  "loc": {
                                    "start": {
                                      "line": 311,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 311,
                                      "column": 20
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 13681,
                                    "end": 13685,
                                    "loc": {
                                      "start": {
                                        "line": 311,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 311,
                                        "column": 16
                                      }
                                    },
                                    "name": "bbox"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 13686,
                                    "end": 13689,
                                    "loc": {
                                      "start": {
                                        "line": 311,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 311,
                                        "column": 20
                                      }
                                    },
                                    "name": "max"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13690,
                                  "end": 13691,
                                  "loc": {
                                    "start": {
                                      "line": 311,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 311,
                                      "column": 22
                                    }
                                  },
                                  "name": "z"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 13694,
                                "end": 13698,
                                "loc": {
                                  "start": {
                                    "line": 311,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 311,
                                    "column": 29
                                  }
                                },
                                "value": 0.001,
                                "rawValue": 0.001,
                                "raw": "1e-3"
                              }
                            },
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": " !nb: updates thisBox from bbox",
                                "start": 13713,
                                "end": 13746,
                                "loc": {
                                  "start": {
                                    "line": 312,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 312,
                                    "column": 45
                                  }
                                },
                                "range": [
                                  13713,
                                  13746
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 13760,
                            "end": 13785,
                            "loc": {
                              "start": {
                                "line": 313,
                                "column": 12
                              },
                              "end": {
                                "line": 313,
                                "column": 37
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 13760,
                              "end": 13784,
                              "loc": {
                                "start": {
                                  "line": 313,
                                  "column": 12
                                },
                                "end": {
                                  "line": 313,
                                  "column": 36
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 13760,
                                "end": 13769,
                                "loc": {
                                  "start": {
                                    "line": 313,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 313,
                                    "column": 21
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 13760,
                                  "end": 13764,
                                  "loc": {
                                    "start": {
                                      "line": 313,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 313,
                                      "column": 16
                                    }
                                  },
                                  "name": "bbox",
                                  "leadingComments": null
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13765,
                                  "end": 13769,
                                  "loc": {
                                    "start": {
                                      "line": 313,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 313,
                                      "column": 21
                                    }
                                  },
                                  "name": "size"
                                },
                                "computed": false,
                                "leadingComments": null
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 13770,
                                  "end": 13783,
                                  "loc": {
                                    "start": {
                                      "line": 313,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 313,
                                      "column": 35
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 13770,
                                    "end": 13777,
                                    "loc": {
                                      "start": {
                                        "line": 313,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 313,
                                        "column": 29
                                      }
                                    },
                                    "name": "thisBox"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 13778,
                                    "end": 13783,
                                    "loc": {
                                      "start": {
                                        "line": 313,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 313,
                                        "column": 35
                                      }
                                    },
                                    "name": "scale"
                                  },
                                  "computed": false
                                }
                              ],
                              "leadingComments": null
                            },
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " !nb: updates thisBox from bbox",
                                "start": 13713,
                                "end": 13746,
                                "loc": {
                                  "start": {
                                    "line": 312,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 312,
                                    "column": 45
                                  }
                                },
                                "range": [
                                  13713,
                                  13746
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 13799,
                            "end": 13829,
                            "loc": {
                              "start": {
                                "line": 314,
                                "column": 12
                              },
                              "end": {
                                "line": 314,
                                "column": 42
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 13799,
                              "end": 13828,
                              "loc": {
                                "start": {
                                  "line": 314,
                                  "column": 12
                                },
                                "end": {
                                  "line": 314,
                                  "column": 41
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 13799,
                                "end": 13810,
                                "loc": {
                                  "start": {
                                    "line": 314,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 314,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 13799,
                                  "end": 13803,
                                  "loc": {
                                    "start": {
                                      "line": 314,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 314,
                                      "column": 16
                                    }
                                  },
                                  "name": "bbox"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13804,
                                  "end": 13810,
                                  "loc": {
                                    "start": {
                                      "line": 314,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 314,
                                      "column": 23
                                    }
                                  },
                                  "name": "center"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 13811,
                                  "end": 13827,
                                  "loc": {
                                    "start": {
                                      "line": 314,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 314,
                                      "column": 40
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 13811,
                                    "end": 13818,
                                    "loc": {
                                      "start": {
                                        "line": 314,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 314,
                                        "column": 31
                                      }
                                    },
                                    "name": "thisBox"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 13819,
                                    "end": 13827,
                                    "loc": {
                                      "start": {
                                        "line": 314,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 314,
                                        "column": 40
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 13855,
              "end": 14225,
              "loc": {
                "start": {
                  "line": 318,
                  "column": 4
                },
                "end": {
                  "line": 329,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 13855,
                "end": 13866,
                "loc": {
                  "start": {
                    "line": 318,
                    "column": 4
                  },
                  "end": {
                    "line": 318,
                    "column": 15
                  }
                },
                "name": "infiniteBox"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 13866,
                "end": 14225,
                "loc": {
                  "start": {
                    "line": 318,
                    "column": 15
                  },
                  "end": {
                    "line": 329,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 13869,
                  "end": 14225,
                  "loc": {
                    "start": {
                      "line": 318,
                      "column": 18
                    },
                    "end": {
                      "line": 329,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 13880,
                      "end": 13908,
                      "loc": {
                        "start": {
                          "line": 319,
                          "column": 8
                        },
                        "end": {
                          "line": 319,
                          "column": 36
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 13884,
                          "end": 13907,
                          "loc": {
                            "start": {
                              "line": 319,
                              "column": 12
                            },
                            "end": {
                              "line": 319,
                              "column": 35
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 13884,
                            "end": 13888,
                            "loc": {
                              "start": {
                                "line": 319,
                                "column": 12
                              },
                              "end": {
                                "line": 319,
                                "column": 16
                              }
                            },
                            "name": "bbox"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 13891,
                            "end": 13907,
                            "loc": {
                              "start": {
                                "line": 319,
                                "column": 19
                              },
                              "end": {
                                "line": 319,
                                "column": 35
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13895,
                              "end": 13905,
                              "loc": {
                                "start": {
                                  "line": 319,
                                  "column": 23
                                },
                                "end": {
                                  "line": 319,
                                  "column": 33
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 13895,
                                "end": 13900,
                                "loc": {
                                  "start": {
                                    "line": 319,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 319,
                                    "column": 28
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13901,
                                "end": 13905,
                                "loc": {
                                  "start": {
                                    "line": 319,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 319,
                                    "column": 33
                                  }
                                },
                                "name": "Box3"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13918,
                      "end": 13947,
                      "loc": {
                        "start": {
                          "line": 320,
                          "column": 8
                        },
                        "end": {
                          "line": 320,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13918,
                        "end": 13946,
                        "loc": {
                          "start": {
                            "line": 320,
                            "column": 8
                          },
                          "end": {
                            "line": 320,
                            "column": 36
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13918,
                          "end": 13930,
                          "loc": {
                            "start": {
                              "line": 320,
                              "column": 8
                            },
                            "end": {
                              "line": 320,
                              "column": 20
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 13918,
                            "end": 13926,
                            "loc": {
                              "start": {
                                "line": 320,
                                "column": 8
                              },
                              "end": {
                                "line": 320,
                                "column": 16
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 13918,
                              "end": 13922,
                              "loc": {
                                "start": {
                                  "line": 320,
                                  "column": 8
                                },
                                "end": {
                                  "line": 320,
                                  "column": 12
                                }
                              },
                              "name": "bbox"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13923,
                              "end": 13926,
                              "loc": {
                                "start": {
                                  "line": 320,
                                  "column": 13
                                },
                                "end": {
                                  "line": 320,
                                  "column": 16
                                }
                              },
                              "name": "max"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13927,
                            "end": 13930,
                            "loc": {
                              "start": {
                                "line": 320,
                                "column": 17
                              },
                              "end": {
                                "line": 320,
                                "column": 20
                              }
                            },
                            "name": "set"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 13931,
                            "end": 13934,
                            "loc": {
                              "start": {
                                "line": 320,
                                "column": 21
                              },
                              "end": {
                                "line": 320,
                                "column": 24
                              }
                            },
                            "value": 100000,
                            "rawValue": 100000,
                            "raw": "1e5"
                          },
                          {
                            "type": "Literal",
                            "start": 13936,
                            "end": 13939,
                            "loc": {
                              "start": {
                                "line": 320,
                                "column": 26
                              },
                              "end": {
                                "line": 320,
                                "column": 29
                              }
                            },
                            "value": 100000,
                            "rawValue": 100000,
                            "raw": "1e5"
                          },
                          {
                            "type": "Literal",
                            "start": 13941,
                            "end": 13945,
                            "loc": {
                              "start": {
                                "line": 320,
                                "column": 31
                              },
                              "end": {
                                "line": 320,
                                "column": 35
                              }
                            },
                            "value": 0.001,
                            "rawValue": 0.001,
                            "raw": "1e-3"
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13957,
                      "end": 13981,
                      "loc": {
                        "start": {
                          "line": 321,
                          "column": 8
                        },
                        "end": {
                          "line": 321,
                          "column": 32
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13957,
                        "end": 13980,
                        "loc": {
                          "start": {
                            "line": 321,
                            "column": 8
                          },
                          "end": {
                            "line": 321,
                            "column": 31
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13957,
                          "end": 13970,
                          "loc": {
                            "start": {
                              "line": 321,
                              "column": 8
                            },
                            "end": {
                              "line": 321,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 13957,
                            "end": 13965,
                            "loc": {
                              "start": {
                                "line": 321,
                                "column": 8
                              },
                              "end": {
                                "line": 321,
                                "column": 16
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 13957,
                              "end": 13961,
                              "loc": {
                                "start": {
                                  "line": 321,
                                  "column": 8
                                },
                                "end": {
                                  "line": 321,
                                  "column": 12
                                }
                              },
                              "name": "bbox"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13962,
                              "end": 13965,
                              "loc": {
                                "start": {
                                  "line": 321,
                                  "column": 13
                                },
                                "end": {
                                  "line": 321,
                                  "column": 16
                                }
                              },
                              "name": "min"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13966,
                            "end": 13970,
                            "loc": {
                              "start": {
                                "line": 321,
                                "column": 17
                              },
                              "end": {
                                "line": 321,
                                "column": 21
                              }
                            },
                            "name": "copy"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 13971,
                            "end": 13979,
                            "loc": {
                              "start": {
                                "line": 321,
                                "column": 22
                              },
                              "end": {
                                "line": 321,
                                "column": 30
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 13971,
                              "end": 13975,
                              "loc": {
                                "start": {
                                  "line": 321,
                                  "column": 22
                                },
                                "end": {
                                  "line": 321,
                                  "column": 26
                                }
                              },
                              "name": "bbox"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13976,
                              "end": 13979,
                              "loc": {
                                "start": {
                                  "line": 321,
                                  "column": 27
                                },
                                "end": {
                                  "line": 321,
                                  "column": 30
                                }
                              },
                              "name": "max"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13991,
                      "end": 14009,
                      "loc": {
                        "start": {
                          "line": 322,
                          "column": 8
                        },
                        "end": {
                          "line": 322,
                          "column": 26
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13991,
                        "end": 14008,
                        "loc": {
                          "start": {
                            "line": 322,
                            "column": 8
                          },
                          "end": {
                            "line": 322,
                            "column": 25
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13991,
                          "end": 14006,
                          "loc": {
                            "start": {
                              "line": 322,
                              "column": 8
                            },
                            "end": {
                              "line": 322,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 13991,
                            "end": 13999,
                            "loc": {
                              "start": {
                                "line": 322,
                                "column": 8
                              },
                              "end": {
                                "line": 322,
                                "column": 16
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 13991,
                              "end": 13995,
                              "loc": {
                                "start": {
                                  "line": 322,
                                  "column": 8
                                },
                                "end": {
                                  "line": 322,
                                  "column": 12
                                }
                              },
                              "name": "bbox"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13996,
                              "end": 13999,
                              "loc": {
                                "start": {
                                  "line": 322,
                                  "column": 13
                                },
                                "end": {
                                  "line": 322,
                                  "column": 16
                                }
                              },
                              "name": "min"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14000,
                            "end": 14006,
                            "loc": {
                              "start": {
                                "line": 322,
                                "column": 17
                              },
                              "end": {
                                "line": 322,
                                "column": 23
                              }
                            },
                            "name": "negate"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 14021,
                      "end": 14046,
                      "loc": {
                        "start": {
                          "line": 324,
                          "column": 8
                        },
                        "end": {
                          "line": 324,
                          "column": 33
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 14025,
                          "end": 14045,
                          "loc": {
                            "start": {
                              "line": 324,
                              "column": 12
                            },
                            "end": {
                              "line": 324,
                              "column": 32
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 14025,
                            "end": 14032,
                            "loc": {
                              "start": {
                                "line": 324,
                                "column": 12
                              },
                              "end": {
                                "line": 324,
                                "column": 19
                              }
                            },
                            "name": "thisBox"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 14035,
                            "end": 14045,
                            "loc": {
                              "start": {
                                "line": 324,
                                "column": 22
                              },
                              "end": {
                                "line": 324,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 14035,
                              "end": 14039,
                              "loc": {
                                "start": {
                                  "line": 324,
                                  "column": 22
                                },
                                "end": {
                                  "line": 324,
                                  "column": 26
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 14040,
                              "end": 14045,
                              "loc": {
                                "start": {
                                  "line": 324,
                                  "column": 27
                                },
                                "end": {
                                  "line": 324,
                                  "column": 32
                                }
                              },
                              "name": "__box"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 14056,
                      "end": 14100,
                      "loc": {
                        "start": {
                          "line": 325,
                          "column": 8
                        },
                        "end": {
                          "line": 325,
                          "column": 52
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 14056,
                        "end": 14099,
                        "loc": {
                          "start": {
                            "line": 325,
                            "column": 8
                          },
                          "end": {
                            "line": 325,
                            "column": 51
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 14056,
                          "end": 14072,
                          "loc": {
                            "start": {
                              "line": 325,
                              "column": 8
                            },
                            "end": {
                              "line": 325,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 14056,
                            "end": 14063,
                            "loc": {
                              "start": {
                                "line": 325,
                                "column": 8
                              },
                              "end": {
                                "line": 325,
                                "column": 15
                              }
                            },
                            "name": "thisBox"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14064,
                            "end": 14072,
                            "loc": {
                              "start": {
                                "line": 325,
                                "column": 16
                              },
                              "end": {
                                "line": 325,
                                "column": 24
                              }
                            },
                            "name": "material"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 14075,
                          "end": 14099,
                          "loc": {
                            "start": {
                              "line": 325,
                              "column": 27
                            },
                            "end": {
                              "line": 325,
                              "column": 51
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 14075,
                            "end": 14079,
                            "loc": {
                              "start": {
                                "line": 325,
                                "column": 27
                              },
                              "end": {
                                "line": 325,
                                "column": 31
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14080,
                            "end": 14099,
                            "loc": {
                              "start": {
                                "line": 325,
                                "column": 32
                              },
                              "end": {
                                "line": 325,
                                "column": 51
                              }
                            },
                            "name": "infiniteBoxMaterial"
                          },
                          "computed": false
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " !nb: updates thisBox from bbox",
                          "start": 14110,
                          "end": 14143,
                          "loc": {
                            "start": {
                              "line": 326,
                              "column": 8
                            },
                            "end": {
                              "line": 326,
                              "column": 41
                            }
                          },
                          "range": [
                            14110,
                            14143
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 14153,
                      "end": 14178,
                      "loc": {
                        "start": {
                          "line": 327,
                          "column": 8
                        },
                        "end": {
                          "line": 327,
                          "column": 33
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 14153,
                        "end": 14177,
                        "loc": {
                          "start": {
                            "line": 327,
                            "column": 8
                          },
                          "end": {
                            "line": 327,
                            "column": 32
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14153,
                          "end": 14162,
                          "loc": {
                            "start": {
                              "line": 327,
                              "column": 8
                            },
                            "end": {
                              "line": 327,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 14153,
                            "end": 14157,
                            "loc": {
                              "start": {
                                "line": 327,
                                "column": 8
                              },
                              "end": {
                                "line": 327,
                                "column": 12
                              }
                            },
                            "name": "bbox",
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14158,
                            "end": 14162,
                            "loc": {
                              "start": {
                                "line": 327,
                                "column": 13
                              },
                              "end": {
                                "line": 327,
                                "column": 17
                              }
                            },
                            "name": "size"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 14163,
                            "end": 14176,
                            "loc": {
                              "start": {
                                "line": 327,
                                "column": 18
                              },
                              "end": {
                                "line": 327,
                                "column": 31
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 14163,
                              "end": 14170,
                              "loc": {
                                "start": {
                                  "line": 327,
                                  "column": 18
                                },
                                "end": {
                                  "line": 327,
                                  "column": 25
                                }
                              },
                              "name": "thisBox"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 14171,
                              "end": 14176,
                              "loc": {
                                "start": {
                                  "line": 327,
                                  "column": 26
                                },
                                "end": {
                                  "line": 327,
                                  "column": 31
                                }
                              },
                              "name": "scale"
                            },
                            "computed": false
                          }
                        ],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " !nb: updates thisBox from bbox",
                          "start": 14110,
                          "end": 14143,
                          "loc": {
                            "start": {
                              "line": 326,
                              "column": 8
                            },
                            "end": {
                              "line": 326,
                              "column": 41
                            }
                          },
                          "range": [
                            14110,
                            14143
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 14188,
                      "end": 14218,
                      "loc": {
                        "start": {
                          "line": 328,
                          "column": 8
                        },
                        "end": {
                          "line": 328,
                          "column": 38
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 14188,
                        "end": 14217,
                        "loc": {
                          "start": {
                            "line": 328,
                            "column": 8
                          },
                          "end": {
                            "line": 328,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14188,
                          "end": 14199,
                          "loc": {
                            "start": {
                              "line": 328,
                              "column": 8
                            },
                            "end": {
                              "line": 328,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 14188,
                            "end": 14192,
                            "loc": {
                              "start": {
                                "line": 328,
                                "column": 8
                              },
                              "end": {
                                "line": 328,
                                "column": 12
                              }
                            },
                            "name": "bbox"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14193,
                            "end": 14199,
                            "loc": {
                              "start": {
                                "line": 328,
                                "column": 13
                              },
                              "end": {
                                "line": 328,
                                "column": 19
                              }
                            },
                            "name": "center"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 14200,
                            "end": 14216,
                            "loc": {
                              "start": {
                                "line": 328,
                                "column": 20
                              },
                              "end": {
                                "line": 328,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 14200,
                              "end": 14207,
                              "loc": {
                                "start": {
                                  "line": 328,
                                  "column": 20
                                },
                                "end": {
                                  "line": 328,
                                  "column": 27
                                }
                              },
                              "name": "thisBox"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 14208,
                              "end": 14216,
                              "loc": {
                                "start": {
                                  "line": 328,
                                  "column": 28
                                },
                                "end": {
                                  "line": 328,
                                  "column": 36
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 14233,
              "end": 14336,
              "loc": {
                "start": {
                  "line": 331,
                  "column": 4
                },
                "end": {
                  "line": 334,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 14233,
                "end": 14241,
                "loc": {
                  "start": {
                    "line": 331,
                    "column": 4
                  },
                  "end": {
                    "line": 331,
                    "column": 12
                  }
                },
                "name": "showGrid"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 14241,
                "end": 14336,
                "loc": {
                  "start": {
                    "line": 331,
                    "column": 12
                  },
                  "end": {
                    "line": 334,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 14244,
                  "end": 14336,
                  "loc": {
                    "start": {
                      "line": 331,
                      "column": 15
                    },
                    "end": {
                      "line": 334,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 14255,
                      "end": 14301,
                      "loc": {
                        "start": {
                          "line": 332,
                          "column": 8
                        },
                        "end": {
                          "line": 332,
                          "column": 54
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 14255,
                        "end": 14300,
                        "loc": {
                          "start": {
                            "line": 332,
                            "column": 8
                          },
                          "end": {
                            "line": 332,
                            "column": 53
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14255,
                          "end": 14272,
                          "loc": {
                            "start": {
                              "line": 332,
                              "column": 8
                            },
                            "end": {
                              "line": 332,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 14255,
                            "end": 14259,
                            "loc": {
                              "start": {
                                "line": 332,
                                "column": 8
                              },
                              "end": {
                                "line": 332,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14260,
                            "end": 14272,
                            "loc": {
                              "start": {
                                "line": 332,
                                "column": 13
                              },
                              "end": {
                                "line": 332,
                                "column": 25
                              }
                            },
                            "name": "addAuxObject"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrayExpression",
                            "start": 14273,
                            "end": 14299,
                            "loc": {
                              "start": {
                                "line": 332,
                                "column": 26
                              },
                              "end": {
                                "line": 332,
                                "column": 52
                              }
                            },
                            "elements": [
                              {
                                "type": "MemberExpression",
                                "start": 14274,
                                "end": 14285,
                                "loc": {
                                  "start": {
                                    "line": 332,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 332,
                                    "column": 38
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 14274,
                                  "end": 14278,
                                  "loc": {
                                    "start": {
                                      "line": 332,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 332,
                                      "column": 31
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14279,
                                  "end": 14285,
                                  "loc": {
                                    "start": {
                                      "line": 332,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 332,
                                      "column": 38
                                    }
                                  },
                                  "name": "__grid"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 14287,
                                "end": 14298,
                                "loc": {
                                  "start": {
                                    "line": 332,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 332,
                                    "column": 51
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 14287,
                                  "end": 14291,
                                  "loc": {
                                    "start": {
                                      "line": 332,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 332,
                                      "column": 44
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14292,
                                  "end": 14298,
                                  "loc": {
                                    "start": {
                                      "line": 332,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 332,
                                      "column": 51
                                    }
                                  },
                                  "name": "__axis"
                                },
                                "computed": false
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 14311,
                      "end": 14329,
                      "loc": {
                        "start": {
                          "line": 333,
                          "column": 8
                        },
                        "end": {
                          "line": 333,
                          "column": 26
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 14311,
                        "end": 14328,
                        "loc": {
                          "start": {
                            "line": 333,
                            "column": 8
                          },
                          "end": {
                            "line": 333,
                            "column": 25
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 14311,
                          "end": 14320,
                          "loc": {
                            "start": {
                              "line": 333,
                              "column": 8
                            },
                            "end": {
                              "line": 333,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 14311,
                            "end": 14315,
                            "loc": {
                              "start": {
                                "line": 333,
                                "column": 8
                              },
                              "end": {
                                "line": 333,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14316,
                            "end": 14320,
                            "loc": {
                              "start": {
                                "line": 333,
                                "column": 13
                              },
                              "end": {
                                "line": 333,
                                "column": 17
                              }
                            },
                            "name": "zoom"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "UnaryExpression",
                          "start": 14323,
                          "end": 14328,
                          "loc": {
                            "start": {
                              "line": 333,
                              "column": 20
                            },
                            "end": {
                              "line": 333,
                              "column": 25
                            }
                          },
                          "operator": "-",
                          "prefix": true,
                          "argument": {
                            "type": "Literal",
                            "start": 14325,
                            "end": 14328,
                            "loc": {
                              "start": {
                                "line": 333,
                                "column": 22
                              },
                              "end": {
                                "line": 333,
                                "column": 25
                              }
                            },
                            "value": 250,
                            "rawValue": 250,
                            "raw": "250"
                          }
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 14344,
              "end": 14422,
              "loc": {
                "start": {
                  "line": 336,
                  "column": 4
                },
                "end": {
                  "line": 338,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 14344,
                "end": 14352,
                "loc": {
                  "start": {
                    "line": 336,
                    "column": 4
                  },
                  "end": {
                    "line": 336,
                    "column": 12
                  }
                },
                "name": "hideGrid"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 14352,
                "end": 14422,
                "loc": {
                  "start": {
                    "line": 336,
                    "column": 12
                  },
                  "end": {
                    "line": 338,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 14355,
                  "end": 14422,
                  "loc": {
                    "start": {
                      "line": 336,
                      "column": 15
                    },
                    "end": {
                      "line": 338,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 14366,
                      "end": 14415,
                      "loc": {
                        "start": {
                          "line": 337,
                          "column": 8
                        },
                        "end": {
                          "line": 337,
                          "column": 57
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 14366,
                        "end": 14414,
                        "loc": {
                          "start": {
                            "line": 337,
                            "column": 8
                          },
                          "end": {
                            "line": 337,
                            "column": 56
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14366,
                          "end": 14386,
                          "loc": {
                            "start": {
                              "line": 337,
                              "column": 8
                            },
                            "end": {
                              "line": 337,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 14366,
                            "end": 14370,
                            "loc": {
                              "start": {
                                "line": 337,
                                "column": 8
                              },
                              "end": {
                                "line": 337,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14371,
                            "end": 14386,
                            "loc": {
                              "start": {
                                "line": 337,
                                "column": 13
                              },
                              "end": {
                                "line": 337,
                                "column": 28
                              }
                            },
                            "name": "removeAuxObject"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrayExpression",
                            "start": 14387,
                            "end": 14413,
                            "loc": {
                              "start": {
                                "line": 337,
                                "column": 29
                              },
                              "end": {
                                "line": 337,
                                "column": 55
                              }
                            },
                            "elements": [
                              {
                                "type": "MemberExpression",
                                "start": 14388,
                                "end": 14399,
                                "loc": {
                                  "start": {
                                    "line": 337,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 337,
                                    "column": 41
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 14388,
                                  "end": 14392,
                                  "loc": {
                                    "start": {
                                      "line": 337,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 337,
                                      "column": 34
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14393,
                                  "end": 14399,
                                  "loc": {
                                    "start": {
                                      "line": 337,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 337,
                                      "column": 41
                                    }
                                  },
                                  "name": "__grid"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 14401,
                                "end": 14412,
                                "loc": {
                                  "start": {
                                    "line": 337,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 337,
                                    "column": 54
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 14401,
                                  "end": 14405,
                                  "loc": {
                                    "start": {
                                      "line": 337,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 337,
                                      "column": 47
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14406,
                                  "end": 14412,
                                  "loc": {
                                    "start": {
                                      "line": 337,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 337,
                                      "column": 54
                                    }
                                  },
                                  "name": "__axis"
                                },
                                "computed": false
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 14430,
              "end": 18307,
              "loc": {
                "start": {
                  "line": 340,
                  "column": 4
                },
                "end": {
                  "line": 418,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 14430,
                "end": 14440,
                "loc": {
                  "start": {
                    "line": 340,
                    "column": 4
                  },
                  "end": {
                    "line": 340,
                    "column": 14
                  }
                },
                "name": "updateGrid"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 14440,
                "end": 18307,
                "loc": {
                  "start": {
                    "line": 340,
                    "column": 14
                  },
                  "end": {
                    "line": 418,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 14441,
                    "end": 14455,
                    "loc": {
                      "start": {
                        "line": 340,
                        "column": 15
                      },
                      "end": {
                        "line": 340,
                        "column": 29
                      }
                    },
                    "name": "cameraDistance"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 14457,
                  "end": 18307,
                  "loc": {
                    "start": {
                      "line": 340,
                      "column": 31
                    },
                    "end": {
                      "line": 418,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 14468,
                      "end": 14507,
                      "loc": {
                        "start": {
                          "line": 341,
                          "column": 8
                        },
                        "end": {
                          "line": 341,
                          "column": 47
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 14468,
                        "end": 14506,
                        "loc": {
                          "start": {
                            "line": 341,
                            "column": 8
                          },
                          "end": {
                            "line": 341,
                            "column": 46
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 14468,
                          "end": 14482,
                          "loc": {
                            "start": {
                              "line": 341,
                              "column": 8
                            },
                            "end": {
                              "line": 341,
                              "column": 22
                            }
                          },
                          "name": "cameraDistance"
                        },
                        "right": {
                          "type": "LogicalExpression",
                          "start": 14485,
                          "end": 14506,
                          "loc": {
                            "start": {
                              "line": 341,
                              "column": 25
                            },
                            "end": {
                              "line": 341,
                              "column": 46
                            }
                          },
                          "left": {
                            "type": "Identifier",
                            "start": 14485,
                            "end": 14499,
                            "loc": {
                              "start": {
                                "line": 341,
                                "column": 25
                              },
                              "end": {
                                "line": 341,
                                "column": 39
                              }
                            },
                            "name": "cameraDistance"
                          },
                          "operator": "||",
                          "right": {
                            "type": "Literal",
                            "start": 14503,
                            "end": 14506,
                            "loc": {
                              "start": {
                                "line": 341,
                                "column": 43
                              },
                              "end": {
                                "line": 341,
                                "column": 46
                              }
                            },
                            "value": 100,
                            "rawValue": 100,
                            "raw": "100"
                          }
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "undefined on initial call",
                          "start": 14508,
                          "end": 14535,
                          "loc": {
                            "start": {
                              "line": 341,
                              "column": 48
                            },
                            "end": {
                              "line": 341,
                              "column": 75
                            }
                          },
                          "range": [
                            14508,
                            14535
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " lines length and number calculating",
                          "start": 14545,
                          "end": 14583,
                          "loc": {
                            "start": {
                              "line": 342,
                              "column": 8
                            },
                            "end": {
                              "line": 342,
                              "column": 46
                            }
                          },
                          "range": [
                            14545,
                            14583
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 14593,
                      "end": 14653,
                      "loc": {
                        "start": {
                          "line": 343,
                          "column": 8
                        },
                        "end": {
                          "line": 343,
                          "column": 68
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 14597,
                          "end": 14652,
                          "loc": {
                            "start": {
                              "line": 343,
                              "column": 12
                            },
                            "end": {
                              "line": 343,
                              "column": 67
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 14597,
                            "end": 14601,
                            "loc": {
                              "start": {
                                "line": 343,
                                "column": 12
                              },
                              "end": {
                                "line": 343,
                                "column": 16
                              }
                            },
                            "name": "step",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 14604,
                            "end": 14652,
                            "loc": {
                              "start": {
                                "line": 343,
                                "column": 19
                              },
                              "end": {
                                "line": 343,
                                "column": 67
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 14604,
                              "end": 14621,
                              "loc": {
                                "start": {
                                  "line": 343,
                                  "column": 19
                                },
                                "end": {
                                  "line": 343,
                                  "column": 36
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 14604,
                                "end": 14608,
                                "loc": {
                                  "start": {
                                    "line": 343,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 343,
                                    "column": 23
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 14609,
                                "end": 14621,
                                "loc": {
                                  "start": {
                                    "line": 343,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 343,
                                    "column": 36
                                  }
                                },
                                "name": "calcGridStep"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 14622,
                                "end": 14636,
                                "loc": {
                                  "start": {
                                    "line": 343,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 343,
                                    "column": 51
                                  }
                                },
                                "name": "cameraDistance"
                              },
                              {
                                "type": "MemberExpression",
                                "start": 14638,
                                "end": 14651,
                                "loc": {
                                  "start": {
                                    "line": 343,
                                    "column": 53
                                  },
                                  "end": {
                                    "line": 343,
                                    "column": 66
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 14638,
                                  "end": 14642,
                                  "loc": {
                                    "start": {
                                      "line": 343,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 343,
                                      "column": 57
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14643,
                                  "end": 14651,
                                  "loc": {
                                    "start": {
                                      "line": 343,
                                      "column": 58
                                    },
                                    "end": {
                                      "line": 343,
                                      "column": 66
                                    }
                                  },
                                  "name": "gridStep"
                                },
                                "computed": false
                              }
                            ]
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "var",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "undefined on initial call",
                          "start": 14508,
                          "end": 14535,
                          "loc": {
                            "start": {
                              "line": 341,
                              "column": 48
                            },
                            "end": {
                              "line": 341,
                              "column": 75
                            }
                          },
                          "range": [
                            14508,
                            14535
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " lines length and number calculating",
                          "start": 14545,
                          "end": 14583,
                          "loc": {
                            "start": {
                              "line": 342,
                              "column": 8
                            },
                            "end": {
                              "line": 342,
                              "column": 46
                            }
                          },
                          "range": [
                            14545,
                            14583
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 14663,
                      "end": 14718,
                      "loc": {
                        "start": {
                          "line": 344,
                          "column": 8
                        },
                        "end": {
                          "line": 344,
                          "column": 63
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 14667,
                          "end": 14717,
                          "loc": {
                            "start": {
                              "line": 344,
                              "column": 12
                            },
                            "end": {
                              "line": 344,
                              "column": 62
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 14667,
                            "end": 14675,
                            "loc": {
                              "start": {
                                "line": 344,
                                "column": 12
                              },
                              "end": {
                                "line": 344,
                                "column": 20
                              }
                            },
                            "name": "axisSize"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 14678,
                            "end": 14717,
                            "loc": {
                              "start": {
                                "line": 344,
                                "column": 23
                              },
                              "end": {
                                "line": 344,
                                "column": 62
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 14678,
                              "end": 14695,
                              "loc": {
                                "start": {
                                  "line": 344,
                                  "column": 23
                                },
                                "end": {
                                  "line": 344,
                                  "column": 40
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 14678,
                                "end": 14682,
                                "loc": {
                                  "start": {
                                    "line": 344,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 344,
                                    "column": 27
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 14683,
                                "end": 14695,
                                "loc": {
                                  "start": {
                                    "line": 344,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 344,
                                    "column": 40
                                  }
                                },
                                "name": "calcAxisSize"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 14696,
                                "end": 14710,
                                "loc": {
                                  "start": {
                                    "line": 344,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 344,
                                    "column": 55
                                  }
                                },
                                "name": "cameraDistance"
                              },
                              {
                                "type": "Identifier",
                                "start": 14712,
                                "end": 14716,
                                "loc": {
                                  "start": {
                                    "line": 344,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 344,
                                    "column": 61
                                  }
                                },
                                "name": "step"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 14728,
                      "end": 14771,
                      "loc": {
                        "start": {
                          "line": 345,
                          "column": 8
                        },
                        "end": {
                          "line": 345,
                          "column": 51
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 14732,
                          "end": 14770,
                          "loc": {
                            "start": {
                              "line": 345,
                              "column": 12
                            },
                            "end": {
                              "line": 345,
                              "column": 50
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 14732,
                            "end": 14742,
                            "loc": {
                              "start": {
                                "line": 345,
                                "column": 12
                              },
                              "end": {
                                "line": 345,
                                "column": 22
                              }
                            },
                            "name": "screenSize"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 14745,
                            "end": 14770,
                            "loc": {
                              "start": {
                                "line": 345,
                                "column": 25
                              },
                              "end": {
                                "line": 345,
                                "column": 50
                              }
                            },
                            "left": {
                              "type": "BinaryExpression",
                              "start": 14745,
                              "end": 14766,
                              "loc": {
                                "start": {
                                  "line": 345,
                                  "column": 25
                                },
                                "end": {
                                  "line": 345,
                                  "column": 46
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 14745,
                                "end": 14749,
                                "loc": {
                                  "start": {
                                    "line": 345,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 345,
                                    "column": 29
                                  }
                                },
                                "name": "step"
                              },
                              "operator": "*",
                              "right": {
                                "type": "MemberExpression",
                                "start": 14753,
                                "end": 14766,
                                "loc": {
                                  "start": {
                                    "line": 345,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 345,
                                    "column": 46
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 14753,
                                  "end": 14757,
                                  "loc": {
                                    "start": {
                                      "line": 345,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 345,
                                      "column": 37
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14758,
                                  "end": 14766,
                                  "loc": {
                                    "start": {
                                      "line": 345,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 345,
                                      "column": 46
                                    }
                                  },
                                  "name": "gridSize"
                                },
                                "computed": false
                              }
                            },
                            "operator": "*",
                            "right": {
                              "type": "Literal",
                              "start": 14769,
                              "end": 14770,
                              "loc": {
                                "start": {
                                  "line": 345,
                                  "column": 49
                                },
                                "end": {
                                  "line": 345,
                                  "column": 50
                                }
                              },
                              "value": 2,
                              "rawValue": 2,
                              "raw": "2"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 14783,
                      "end": 18300,
                      "loc": {
                        "start": {
                          "line": 347,
                          "column": 8
                        },
                        "end": {
                          "line": 417,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 14787,
                        "end": 14839,
                        "loc": {
                          "start": {
                            "line": 347,
                            "column": 12
                          },
                          "end": {
                            "line": 347,
                            "column": 64
                          }
                        },
                        "left": {
                          "type": "BinaryExpression",
                          "start": 14787,
                          "end": 14809,
                          "loc": {
                            "start": {
                              "line": 347,
                              "column": 12
                            },
                            "end": {
                              "line": 347,
                              "column": 34
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 14787,
                            "end": 14800,
                            "loc": {
                              "start": {
                                "line": 347,
                                "column": 12
                              },
                              "end": {
                                "line": 347,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 14787,
                              "end": 14791,
                              "loc": {
                                "start": {
                                  "line": 347,
                                  "column": 12
                                },
                                "end": {
                                  "line": 347,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 14792,
                              "end": 14800,
                              "loc": {
                                "start": {
                                  "line": 347,
                                  "column": 17
                                },
                                "end": {
                                  "line": 347,
                                  "column": 25
                                }
                              },
                              "name": "gridStep"
                            },
                            "computed": false
                          },
                          "operator": "!==",
                          "right": {
                            "type": "Identifier",
                            "start": 14805,
                            "end": 14809,
                            "loc": {
                              "start": {
                                "line": 347,
                                "column": 30
                              },
                              "end": {
                                "line": 347,
                                "column": 34
                              }
                            },
                            "name": "step"
                          }
                        },
                        "operator": "||",
                        "right": {
                          "type": "BinaryExpression",
                          "start": 14813,
                          "end": 14839,
                          "loc": {
                            "start": {
                              "line": 347,
                              "column": 38
                            },
                            "end": {
                              "line": 347,
                              "column": 64
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 14813,
                            "end": 14826,
                            "loc": {
                              "start": {
                                "line": 347,
                                "column": 38
                              },
                              "end": {
                                "line": 347,
                                "column": 51
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 14813,
                              "end": 14817,
                              "loc": {
                                "start": {
                                  "line": 347,
                                  "column": 38
                                },
                                "end": {
                                  "line": 347,
                                  "column": 42
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 14818,
                              "end": 14826,
                              "loc": {
                                "start": {
                                  "line": 347,
                                  "column": 43
                                },
                                "end": {
                                  "line": 347,
                                  "column": 51
                                }
                              },
                              "name": "axisSize"
                            },
                            "computed": false
                          },
                          "operator": "!==",
                          "right": {
                            "type": "Identifier",
                            "start": 14831,
                            "end": 14839,
                            "loc": {
                              "start": {
                                "line": 347,
                                "column": 56
                              },
                              "end": {
                                "line": 347,
                                "column": 64
                              }
                            },
                            "name": "axisSize"
                          }
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 14841,
                        "end": 18300,
                        "loc": {
                          "start": {
                            "line": 347,
                            "column": 66
                          },
                          "end": {
                            "line": 417,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 14856,
                            "end": 14877,
                            "loc": {
                              "start": {
                                "line": 348,
                                "column": 12
                              },
                              "end": {
                                "line": 348,
                                "column": 33
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 14856,
                              "end": 14876,
                              "loc": {
                                "start": {
                                  "line": 348,
                                  "column": 12
                                },
                                "end": {
                                  "line": 348,
                                  "column": 32
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 14856,
                                "end": 14869,
                                "loc": {
                                  "start": {
                                    "line": 348,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 348,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 14856,
                                  "end": 14860,
                                  "loc": {
                                    "start": {
                                      "line": 348,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 348,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14861,
                                  "end": 14869,
                                  "loc": {
                                    "start": {
                                      "line": 348,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 348,
                                      "column": 25
                                    }
                                  },
                                  "name": "gridStep"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Identifier",
                                "start": 14872,
                                "end": 14876,
                                "loc": {
                                  "start": {
                                    "line": 348,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 348,
                                    "column": 32
                                  }
                                },
                                "name": "step"
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 14891,
                            "end": 14916,
                            "loc": {
                              "start": {
                                "line": 349,
                                "column": 12
                              },
                              "end": {
                                "line": 349,
                                "column": 37
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 14891,
                              "end": 14915,
                              "loc": {
                                "start": {
                                  "line": 349,
                                  "column": 12
                                },
                                "end": {
                                  "line": 349,
                                  "column": 36
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 14891,
                                "end": 14904,
                                "loc": {
                                  "start": {
                                    "line": 349,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 349,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 14891,
                                  "end": 14895,
                                  "loc": {
                                    "start": {
                                      "line": 349,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 349,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14896,
                                  "end": 14904,
                                  "loc": {
                                    "start": {
                                      "line": 349,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 349,
                                      "column": 25
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Identifier",
                                "start": 14907,
                                "end": 14915,
                                "loc": {
                                  "start": {
                                    "line": 349,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 349,
                                    "column": 36
                                  }
                                },
                                "name": "axisSize"
                              }
                            }
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 14932,
                            "end": 14965,
                            "loc": {
                              "start": {
                                "line": 351,
                                "column": 12
                              },
                              "end": {
                                "line": 351,
                                "column": 45
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 14936,
                                "end": 14949,
                                "loc": {
                                  "start": {
                                    "line": 351,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 351,
                                    "column": 29
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 14936,
                                  "end": 14945,
                                  "loc": {
                                    "start": {
                                      "line": 351,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 351,
                                      "column": 25
                                    }
                                  },
                                  "name": "gridCount"
                                },
                                "init": {
                                  "type": "Literal",
                                  "start": 14948,
                                  "end": 14949,
                                  "loc": {
                                    "start": {
                                      "line": 351,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 351,
                                      "column": 29
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              },
                              {
                                "type": "VariableDeclarator",
                                "start": 14951,
                                "end": 14964,
                                "loc": {
                                  "start": {
                                    "line": 351,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 351,
                                    "column": 44
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 14951,
                                  "end": 14960,
                                  "loc": {
                                    "start": {
                                      "line": 351,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 351,
                                      "column": 40
                                    }
                                  },
                                  "name": "axisCount"
                                },
                                "init": {
                                  "type": "Literal",
                                  "start": 14963,
                                  "end": 14964,
                                  "loc": {
                                    "start": {
                                      "line": 351,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 351,
                                      "column": 44
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 14979,
                            "end": 15115,
                            "loc": {
                              "start": {
                                "line": 352,
                                "column": 12
                              },
                              "end": {
                                "line": 354,
                                "column": 14
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 14983,
                                "end": 15114,
                                "loc": {
                                  "start": {
                                    "line": 352,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 354,
                                    "column": 13
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 14983,
                                  "end": 14992,
                                  "loc": {
                                    "start": {
                                      "line": 352,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 352,
                                      "column": 25
                                    }
                                  },
                                  "name": "addToGrid"
                                },
                                "init": {
                                  "type": "ArrowFunctionExpression",
                                  "start": 14995,
                                  "end": 15114,
                                  "loc": {
                                    "start": {
                                      "line": 352,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 354,
                                      "column": 13
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 14996,
                                      "end": 14997,
                                      "loc": {
                                        "start": {
                                          "line": 352,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 352,
                                          "column": 30
                                        }
                                      },
                                      "name": "x"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 14999,
                                      "end": 15000,
                                      "loc": {
                                        "start": {
                                          "line": 352,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 352,
                                          "column": 33
                                        }
                                      },
                                      "name": "y"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 15002,
                                      "end": 15003,
                                      "loc": {
                                        "start": {
                                          "line": 352,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 352,
                                          "column": 36
                                        }
                                      },
                                      "name": "z"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 15008,
                                    "end": 15114,
                                    "loc": {
                                      "start": {
                                        "line": 352,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 354,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15027,
                                        "end": 15099,
                                        "loc": {
                                          "start": {
                                            "line": 353,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 353,
                                            "column": 88
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 15027,
                                          "end": 15098,
                                          "loc": {
                                            "start": {
                                              "line": 353,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 353,
                                              "column": 87
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 15027,
                                            "end": 15069,
                                            "loc": {
                                              "start": {
                                                "line": 353,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 353,
                                                "column": 58
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 15027,
                                              "end": 15056,
                                              "loc": {
                                                "start": {
                                                  "line": 353,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 353,
                                                  "column": 45
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 15027,
                                                "end": 15047,
                                                "loc": {
                                                  "start": {
                                                    "line": 353,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 353,
                                                    "column": 36
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 15027,
                                                  "end": 15038,
                                                  "loc": {
                                                    "start": {
                                                      "line": 353,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 353,
                                                      "column": 27
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "ThisExpression",
                                                    "start": 15027,
                                                    "end": 15031,
                                                    "loc": {
                                                      "start": {
                                                        "line": 353,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 353,
                                                        "column": 20
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 15032,
                                                    "end": 15038,
                                                    "loc": {
                                                      "start": {
                                                        "line": 353,
                                                        "column": 21
                                                      },
                                                      "end": {
                                                        "line": 353,
                                                        "column": 27
                                                      }
                                                    },
                                                    "name": "__grid"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 15039,
                                                  "end": 15047,
                                                  "loc": {
                                                    "start": {
                                                      "line": 353,
                                                      "column": 28
                                                    },
                                                    "end": {
                                                      "line": 353,
                                                      "column": 36
                                                    }
                                                  },
                                                  "name": "geometry"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 15048,
                                                "end": 15056,
                                                "loc": {
                                                  "start": {
                                                    "line": 353,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 353,
                                                    "column": 45
                                                  }
                                                },
                                                "name": "vertices"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "UpdateExpression",
                                              "start": 15057,
                                              "end": 15068,
                                              "loc": {
                                                "start": {
                                                  "line": 353,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 353,
                                                  "column": 57
                                                }
                                              },
                                              "operator": "++",
                                              "prefix": false,
                                              "argument": {
                                                "type": "Identifier",
                                                "start": 15057,
                                                "end": 15066,
                                                "loc": {
                                                  "start": {
                                                    "line": 353,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 353,
                                                    "column": 55
                                                  }
                                                },
                                                "name": "gridCount"
                                              }
                                            },
                                            "computed": true
                                          },
                                          "right": {
                                            "type": "NewExpression",
                                            "start": 15072,
                                            "end": 15098,
                                            "loc": {
                                              "start": {
                                                "line": 353,
                                                "column": 61
                                              },
                                              "end": {
                                                "line": 353,
                                                "column": 87
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 15076,
                                              "end": 15089,
                                              "loc": {
                                                "start": {
                                                  "line": 353,
                                                  "column": 65
                                                },
                                                "end": {
                                                  "line": 353,
                                                  "column": 78
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 15076,
                                                "end": 15081,
                                                "loc": {
                                                  "start": {
                                                    "line": 353,
                                                    "column": 65
                                                  },
                                                  "end": {
                                                    "line": 353,
                                                    "column": 70
                                                  }
                                                },
                                                "name": "THREE"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 15082,
                                                "end": 15089,
                                                "loc": {
                                                  "start": {
                                                    "line": 353,
                                                    "column": 71
                                                  },
                                                  "end": {
                                                    "line": 353,
                                                    "column": 78
                                                  }
                                                },
                                                "name": "Vector3"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 15090,
                                                "end": 15091,
                                                "loc": {
                                                  "start": {
                                                    "line": 353,
                                                    "column": 79
                                                  },
                                                  "end": {
                                                    "line": 353,
                                                    "column": 80
                                                  }
                                                },
                                                "name": "x"
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 15093,
                                                "end": 15094,
                                                "loc": {
                                                  "start": {
                                                    "line": 353,
                                                    "column": 82
                                                  },
                                                  "end": {
                                                    "line": 353,
                                                    "column": 83
                                                  }
                                                },
                                                "name": "y"
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 15096,
                                                "end": 15097,
                                                "loc": {
                                                  "start": {
                                                    "line": 353,
                                                    "column": 85
                                                  },
                                                  "end": {
                                                    "line": 353,
                                                    "column": 86
                                                  }
                                                },
                                                "name": "z"
                                              }
                                            ]
                                          }
                                        }
                                      }
                                    ]
                                  }
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 15129,
                            "end": 15265,
                            "loc": {
                              "start": {
                                "line": 355,
                                "column": 12
                              },
                              "end": {
                                "line": 357,
                                "column": 14
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 15133,
                                "end": 15264,
                                "loc": {
                                  "start": {
                                    "line": 355,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 357,
                                    "column": 13
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 15133,
                                  "end": 15142,
                                  "loc": {
                                    "start": {
                                      "line": 355,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 355,
                                      "column": 25
                                    }
                                  },
                                  "name": "addToAxis"
                                },
                                "init": {
                                  "type": "ArrowFunctionExpression",
                                  "start": 15145,
                                  "end": 15264,
                                  "loc": {
                                    "start": {
                                      "line": 355,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 357,
                                      "column": 13
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 15146,
                                      "end": 15147,
                                      "loc": {
                                        "start": {
                                          "line": 355,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 355,
                                          "column": 30
                                        }
                                      },
                                      "name": "x"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 15149,
                                      "end": 15150,
                                      "loc": {
                                        "start": {
                                          "line": 355,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 355,
                                          "column": 33
                                        }
                                      },
                                      "name": "y"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 15152,
                                      "end": 15153,
                                      "loc": {
                                        "start": {
                                          "line": 355,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 355,
                                          "column": 36
                                        }
                                      },
                                      "name": "z"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 15158,
                                    "end": 15264,
                                    "loc": {
                                      "start": {
                                        "line": 355,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 357,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15177,
                                        "end": 15249,
                                        "loc": {
                                          "start": {
                                            "line": 356,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 356,
                                            "column": 88
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 15177,
                                          "end": 15248,
                                          "loc": {
                                            "start": {
                                              "line": 356,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 356,
                                              "column": 87
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 15177,
                                            "end": 15219,
                                            "loc": {
                                              "start": {
                                                "line": 356,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 356,
                                                "column": 58
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 15177,
                                              "end": 15206,
                                              "loc": {
                                                "start": {
                                                  "line": 356,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 356,
                                                  "column": 45
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 15177,
                                                "end": 15197,
                                                "loc": {
                                                  "start": {
                                                    "line": 356,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 356,
                                                    "column": 36
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 15177,
                                                  "end": 15188,
                                                  "loc": {
                                                    "start": {
                                                      "line": 356,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 356,
                                                      "column": 27
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "ThisExpression",
                                                    "start": 15177,
                                                    "end": 15181,
                                                    "loc": {
                                                      "start": {
                                                        "line": 356,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 356,
                                                        "column": 20
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 15182,
                                                    "end": 15188,
                                                    "loc": {
                                                      "start": {
                                                        "line": 356,
                                                        "column": 21
                                                      },
                                                      "end": {
                                                        "line": 356,
                                                        "column": 27
                                                      }
                                                    },
                                                    "name": "__axis"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 15189,
                                                  "end": 15197,
                                                  "loc": {
                                                    "start": {
                                                      "line": 356,
                                                      "column": 28
                                                    },
                                                    "end": {
                                                      "line": 356,
                                                      "column": 36
                                                    }
                                                  },
                                                  "name": "geometry"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 15198,
                                                "end": 15206,
                                                "loc": {
                                                  "start": {
                                                    "line": 356,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 356,
                                                    "column": 45
                                                  }
                                                },
                                                "name": "vertices"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "UpdateExpression",
                                              "start": 15207,
                                              "end": 15218,
                                              "loc": {
                                                "start": {
                                                  "line": 356,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 356,
                                                  "column": 57
                                                }
                                              },
                                              "operator": "++",
                                              "prefix": false,
                                              "argument": {
                                                "type": "Identifier",
                                                "start": 15207,
                                                "end": 15216,
                                                "loc": {
                                                  "start": {
                                                    "line": 356,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 356,
                                                    "column": 55
                                                  }
                                                },
                                                "name": "axisCount"
                                              }
                                            },
                                            "computed": true
                                          },
                                          "right": {
                                            "type": "NewExpression",
                                            "start": 15222,
                                            "end": 15248,
                                            "loc": {
                                              "start": {
                                                "line": 356,
                                                "column": 61
                                              },
                                              "end": {
                                                "line": 356,
                                                "column": 87
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 15226,
                                              "end": 15239,
                                              "loc": {
                                                "start": {
                                                  "line": 356,
                                                  "column": 65
                                                },
                                                "end": {
                                                  "line": 356,
                                                  "column": 78
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 15226,
                                                "end": 15231,
                                                "loc": {
                                                  "start": {
                                                    "line": 356,
                                                    "column": 65
                                                  },
                                                  "end": {
                                                    "line": 356,
                                                    "column": 70
                                                  }
                                                },
                                                "name": "THREE"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 15232,
                                                "end": 15239,
                                                "loc": {
                                                  "start": {
                                                    "line": 356,
                                                    "column": 71
                                                  },
                                                  "end": {
                                                    "line": 356,
                                                    "column": 78
                                                  }
                                                },
                                                "name": "Vector3"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 15240,
                                                "end": 15241,
                                                "loc": {
                                                  "start": {
                                                    "line": 356,
                                                    "column": 79
                                                  },
                                                  "end": {
                                                    "line": 356,
                                                    "column": 80
                                                  }
                                                },
                                                "name": "x"
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 15243,
                                                "end": 15244,
                                                "loc": {
                                                  "start": {
                                                    "line": 356,
                                                    "column": 82
                                                  },
                                                  "end": {
                                                    "line": 356,
                                                    "column": 83
                                                  }
                                                },
                                                "name": "y"
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 15246,
                                                "end": 15247,
                                                "loc": {
                                                  "start": {
                                                    "line": 356,
                                                    "column": 85
                                                  },
                                                  "end": {
                                                    "line": 356,
                                                    "column": 86
                                                  }
                                                },
                                                "name": "z"
                                              }
                                            ]
                                          }
                                        }
                                      }
                                    ]
                                  }
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ForStatement",
                            "start": 15281,
                            "end": 16344,
                            "loc": {
                              "start": {
                                "line": 359,
                                "column": 12
                              },
                              "end": {
                                "line": 380,
                                "column": 13
                              }
                            },
                            "init": {
                              "type": "VariableDeclaration",
                              "start": 15285,
                              "end": 15294,
                              "loc": {
                                "start": {
                                  "line": 359,
                                  "column": 16
                                },
                                "end": {
                                  "line": 359,
                                  "column": 25
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 15289,
                                  "end": 15294,
                                  "loc": {
                                    "start": {
                                      "line": 359,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 359,
                                      "column": 25
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 15289,
                                    "end": 15290,
                                    "loc": {
                                      "start": {
                                        "line": 359,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 359,
                                        "column": 21
                                      }
                                    },
                                    "name": "i"
                                  },
                                  "init": {
                                    "type": "Literal",
                                    "start": 15293,
                                    "end": 15294,
                                    "loc": {
                                      "start": {
                                        "line": 359,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 359,
                                        "column": 25
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  }
                                }
                              ],
                              "kind": "var"
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 15296,
                              "end": 15314,
                              "loc": {
                                "start": {
                                  "line": 359,
                                  "column": 27
                                },
                                "end": {
                                  "line": 359,
                                  "column": 45
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 15296,
                                "end": 15297,
                                "loc": {
                                  "start": {
                                    "line": 359,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 359,
                                    "column": 28
                                  }
                                },
                                "name": "i"
                              },
                              "operator": "<=",
                              "right": {
                                "type": "MemberExpression",
                                "start": 15301,
                                "end": 15314,
                                "loc": {
                                  "start": {
                                    "line": 359,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 359,
                                    "column": 45
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 15301,
                                  "end": 15305,
                                  "loc": {
                                    "start": {
                                      "line": 359,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 359,
                                      "column": 36
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15306,
                                  "end": 15314,
                                  "loc": {
                                    "start": {
                                      "line": 359,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 359,
                                      "column": 45
                                    }
                                  },
                                  "name": "gridSize"
                                },
                                "computed": false
                              }
                            },
                            "update": {
                              "type": "UpdateExpression",
                              "start": 15316,
                              "end": 15319,
                              "loc": {
                                "start": {
                                  "line": 359,
                                  "column": 47
                                },
                                "end": {
                                  "line": 359,
                                  "column": 50
                                }
                              },
                              "operator": "++",
                              "prefix": true,
                              "argument": {
                                "type": "Identifier",
                                "start": 15318,
                                "end": 15319,
                                "loc": {
                                  "start": {
                                    "line": 359,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 359,
                                    "column": 50
                                  }
                                },
                                "name": "i"
                              }
                            },
                            "body": {
                              "type": "BlockStatement",
                              "start": 15321,
                              "end": 16344,
                              "loc": {
                                "start": {
                                  "line": 359,
                                  "column": 52
                                },
                                "end": {
                                  "line": 380,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 15340,
                                  "end": 15381,
                                  "loc": {
                                    "start": {
                                      "line": 360,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 360,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 15340,
                                    "end": 15380,
                                    "loc": {
                                      "start": {
                                        "line": 360,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 360,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 15340,
                                      "end": 15349,
                                      "loc": {
                                        "start": {
                                          "line": 360,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 360,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 15350,
                                        "end": 15365,
                                        "loc": {
                                          "start": {
                                            "line": 360,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 360,
                                            "column": 41
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 15350,
                                          "end": 15361,
                                          "loc": {
                                            "start": {
                                              "line": 360,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 360,
                                              "column": 37
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 15351,
                                            "end": 15361,
                                            "loc": {
                                              "start": {
                                                "line": 360,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 360,
                                                "column": 37
                                              }
                                            },
                                            "name": "screenSize"
                                          }
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 15364,
                                          "end": 15365,
                                          "loc": {
                                            "start": {
                                              "line": 360,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 360,
                                              "column": 41
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 15368,
                                        "end": 15376,
                                        "loc": {
                                          "start": {
                                            "line": 360,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 360,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 15368,
                                          "end": 15372,
                                          "loc": {
                                            "start": {
                                              "line": 360,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 360,
                                              "column": 48
                                            }
                                          },
                                          "name": "step"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 15375,
                                          "end": 15376,
                                          "loc": {
                                            "start": {
                                              "line": 360,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 360,
                                              "column": 52
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 15378,
                                        "end": 15379,
                                        "loc": {
                                          "start": {
                                            "line": 360,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 360,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 15399,
                                  "end": 15440,
                                  "loc": {
                                    "start": {
                                      "line": 361,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 361,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 15399,
                                    "end": 15439,
                                    "loc": {
                                      "start": {
                                        "line": 361,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 361,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 15399,
                                      "end": 15408,
                                      "loc": {
                                        "start": {
                                          "line": 361,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 361,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 15410,
                                        "end": 15424,
                                        "loc": {
                                          "start": {
                                            "line": 361,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 361,
                                            "column": 41
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 15410,
                                          "end": 15420,
                                          "loc": {
                                            "start": {
                                              "line": 361,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 361,
                                              "column": 37
                                            }
                                          },
                                          "name": "screenSize"
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 15423,
                                          "end": 15424,
                                          "loc": {
                                            "start": {
                                              "line": 361,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 361,
                                              "column": 41
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 15427,
                                        "end": 15435,
                                        "loc": {
                                          "start": {
                                            "line": 361,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 361,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 15427,
                                          "end": 15431,
                                          "loc": {
                                            "start": {
                                              "line": 361,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 361,
                                              "column": 48
                                            }
                                          },
                                          "name": "step"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 15434,
                                          "end": 15435,
                                          "loc": {
                                            "start": {
                                              "line": 361,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 361,
                                              "column": 52
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 15437,
                                        "end": 15438,
                                        "loc": {
                                          "start": {
                                            "line": 361,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 361,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 15458,
                                  "end": 15499,
                                  "loc": {
                                    "start": {
                                      "line": 362,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 362,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 15458,
                                    "end": 15498,
                                    "loc": {
                                      "start": {
                                        "line": 362,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 362,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 15458,
                                      "end": 15467,
                                      "loc": {
                                        "start": {
                                          "line": 362,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 362,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 15468,
                                        "end": 15483,
                                        "loc": {
                                          "start": {
                                            "line": 362,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 362,
                                            "column": 41
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 15468,
                                          "end": 15479,
                                          "loc": {
                                            "start": {
                                              "line": 362,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 362,
                                              "column": 37
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 15469,
                                            "end": 15479,
                                            "loc": {
                                              "start": {
                                                "line": 362,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 362,
                                                "column": 37
                                              }
                                            },
                                            "name": "screenSize"
                                          }
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 15482,
                                          "end": 15483,
                                          "loc": {
                                            "start": {
                                              "line": 362,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 362,
                                              "column": 41
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 15485,
                                        "end": 15494,
                                        "loc": {
                                          "start": {
                                            "line": 362,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 362,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 15485,
                                          "end": 15490,
                                          "loc": {
                                            "start": {
                                              "line": 362,
                                              "column": 43
                                            },
                                            "end": {
                                              "line": 362,
                                              "column": 48
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 15486,
                                            "end": 15490,
                                            "loc": {
                                              "start": {
                                                "line": 362,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 362,
                                                "column": 48
                                              }
                                            },
                                            "name": "step"
                                          }
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 15493,
                                          "end": 15494,
                                          "loc": {
                                            "start": {
                                              "line": 362,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 362,
                                              "column": 52
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 15496,
                                        "end": 15497,
                                        "loc": {
                                          "start": {
                                            "line": 362,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 362,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 15517,
                                  "end": 15558,
                                  "loc": {
                                    "start": {
                                      "line": 363,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 363,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 15517,
                                    "end": 15557,
                                    "loc": {
                                      "start": {
                                        "line": 363,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 363,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 15517,
                                      "end": 15526,
                                      "loc": {
                                        "start": {
                                          "line": 363,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 363,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 15528,
                                        "end": 15542,
                                        "loc": {
                                          "start": {
                                            "line": 363,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 363,
                                            "column": 41
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 15528,
                                          "end": 15538,
                                          "loc": {
                                            "start": {
                                              "line": 363,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 363,
                                              "column": 37
                                            }
                                          },
                                          "name": "screenSize"
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 15541,
                                          "end": 15542,
                                          "loc": {
                                            "start": {
                                              "line": 363,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 363,
                                              "column": 41
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 15544,
                                        "end": 15553,
                                        "loc": {
                                          "start": {
                                            "line": 363,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 363,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 15544,
                                          "end": 15549,
                                          "loc": {
                                            "start": {
                                              "line": 363,
                                              "column": 43
                                            },
                                            "end": {
                                              "line": 363,
                                              "column": 48
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 15545,
                                            "end": 15549,
                                            "loc": {
                                              "start": {
                                                "line": 363,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 363,
                                                "column": 48
                                              }
                                            },
                                            "name": "step"
                                          }
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 15552,
                                          "end": 15553,
                                          "loc": {
                                            "start": {
                                              "line": 363,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 363,
                                              "column": 52
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 15555,
                                        "end": 15556,
                                        "loc": {
                                          "start": {
                                            "line": 363,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 363,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 15576,
                                  "end": 15617,
                                  "loc": {
                                    "start": {
                                      "line": 364,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 364,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 15576,
                                    "end": 15616,
                                    "loc": {
                                      "start": {
                                        "line": 364,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 364,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 15576,
                                      "end": 15585,
                                      "loc": {
                                        "start": {
                                          "line": 364,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 364,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 15587,
                                        "end": 15595,
                                        "loc": {
                                          "start": {
                                            "line": 364,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 364,
                                            "column": 35
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 15587,
                                          "end": 15591,
                                          "loc": {
                                            "start": {
                                              "line": 364,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 364,
                                              "column": 31
                                            }
                                          },
                                          "name": "step"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 15594,
                                          "end": 15595,
                                          "loc": {
                                            "start": {
                                              "line": 364,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 364,
                                              "column": 35
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 15598,
                                        "end": 15612,
                                        "loc": {
                                          "start": {
                                            "line": 364,
                                            "column": 38
                                          },
                                          "end": {
                                            "line": 364,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 15598,
                                          "end": 15608,
                                          "loc": {
                                            "start": {
                                              "line": 364,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 364,
                                              "column": 48
                                            }
                                          },
                                          "name": "screenSize"
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 15611,
                                          "end": 15612,
                                          "loc": {
                                            "start": {
                                              "line": 364,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 364,
                                              "column": 52
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 15614,
                                        "end": 15615,
                                        "loc": {
                                          "start": {
                                            "line": 364,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 364,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 15635,
                                  "end": 15676,
                                  "loc": {
                                    "start": {
                                      "line": 365,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 365,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 15635,
                                    "end": 15675,
                                    "loc": {
                                      "start": {
                                        "line": 365,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 365,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 15635,
                                      "end": 15644,
                                      "loc": {
                                        "start": {
                                          "line": 365,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 365,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 15646,
                                        "end": 15654,
                                        "loc": {
                                          "start": {
                                            "line": 365,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 365,
                                            "column": 35
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 15646,
                                          "end": 15650,
                                          "loc": {
                                            "start": {
                                              "line": 365,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 365,
                                              "column": 31
                                            }
                                          },
                                          "name": "step"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 15653,
                                          "end": 15654,
                                          "loc": {
                                            "start": {
                                              "line": 365,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 365,
                                              "column": 35
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 15656,
                                        "end": 15671,
                                        "loc": {
                                          "start": {
                                            "line": 365,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 365,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 15656,
                                          "end": 15667,
                                          "loc": {
                                            "start": {
                                              "line": 365,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 365,
                                              "column": 48
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 15657,
                                            "end": 15667,
                                            "loc": {
                                              "start": {
                                                "line": 365,
                                                "column": 38
                                              },
                                              "end": {
                                                "line": 365,
                                                "column": 48
                                              }
                                            },
                                            "name": "screenSize"
                                          }
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 15670,
                                          "end": 15671,
                                          "loc": {
                                            "start": {
                                              "line": 365,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 365,
                                              "column": 52
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 15673,
                                        "end": 15674,
                                        "loc": {
                                          "start": {
                                            "line": 365,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 365,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 15694,
                                  "end": 15735,
                                  "loc": {
                                    "start": {
                                      "line": 366,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 366,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 15694,
                                    "end": 15734,
                                    "loc": {
                                      "start": {
                                        "line": 366,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 366,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 15694,
                                      "end": 15703,
                                      "loc": {
                                        "start": {
                                          "line": 366,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 366,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 15704,
                                        "end": 15713,
                                        "loc": {
                                          "start": {
                                            "line": 366,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 366,
                                            "column": 35
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 15704,
                                          "end": 15709,
                                          "loc": {
                                            "start": {
                                              "line": 366,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 366,
                                              "column": 31
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 15705,
                                            "end": 15709,
                                            "loc": {
                                              "start": {
                                                "line": 366,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 366,
                                                "column": 31
                                              }
                                            },
                                            "name": "step"
                                          }
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 15712,
                                          "end": 15713,
                                          "loc": {
                                            "start": {
                                              "line": 366,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 366,
                                              "column": 35
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 15716,
                                        "end": 15730,
                                        "loc": {
                                          "start": {
                                            "line": 366,
                                            "column": 38
                                          },
                                          "end": {
                                            "line": 366,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 15716,
                                          "end": 15726,
                                          "loc": {
                                            "start": {
                                              "line": 366,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 366,
                                              "column": 48
                                            }
                                          },
                                          "name": "screenSize"
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 15729,
                                          "end": 15730,
                                          "loc": {
                                            "start": {
                                              "line": 366,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 366,
                                              "column": 52
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 15732,
                                        "end": 15733,
                                        "loc": {
                                          "start": {
                                            "line": 366,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 366,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 15753,
                                  "end": 15794,
                                  "loc": {
                                    "start": {
                                      "line": 367,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 367,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 15753,
                                    "end": 15793,
                                    "loc": {
                                      "start": {
                                        "line": 367,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 367,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 15753,
                                      "end": 15762,
                                      "loc": {
                                        "start": {
                                          "line": 367,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 367,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 15763,
                                        "end": 15772,
                                        "loc": {
                                          "start": {
                                            "line": 367,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 367,
                                            "column": 35
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 15763,
                                          "end": 15768,
                                          "loc": {
                                            "start": {
                                              "line": 367,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 367,
                                              "column": 31
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 15764,
                                            "end": 15768,
                                            "loc": {
                                              "start": {
                                                "line": 367,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 367,
                                                "column": 31
                                              }
                                            },
                                            "name": "step"
                                          }
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 15771,
                                          "end": 15772,
                                          "loc": {
                                            "start": {
                                              "line": 367,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 367,
                                              "column": 35
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 15774,
                                        "end": 15789,
                                        "loc": {
                                          "start": {
                                            "line": 367,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 367,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 15774,
                                          "end": 15785,
                                          "loc": {
                                            "start": {
                                              "line": 367,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 367,
                                              "column": 48
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 15775,
                                            "end": 15785,
                                            "loc": {
                                              "start": {
                                                "line": 367,
                                                "column": 38
                                              },
                                              "end": {
                                                "line": 367,
                                                "column": 48
                                              }
                                            },
                                            "name": "screenSize"
                                          }
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 15788,
                                          "end": 15789,
                                          "loc": {
                                            "start": {
                                              "line": 367,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 367,
                                              "column": 52
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 15791,
                                        "end": 15792,
                                        "loc": {
                                          "start": {
                                            "line": 367,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 367,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 15812,
                                  "end": 16329,
                                  "loc": {
                                    "start": {
                                      "line": 368,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 379,
                                      "column": 17
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 15816,
                                    "end": 15823,
                                    "loc": {
                                      "start": {
                                        "line": 368,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 368,
                                        "column": 27
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 15816,
                                      "end": 15817,
                                      "loc": {
                                        "start": {
                                          "line": 368,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 368,
                                          "column": 21
                                        }
                                      },
                                      "name": "i"
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "Literal",
                                      "start": 15822,
                                      "end": 15823,
                                      "loc": {
                                        "start": {
                                          "line": 368,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 368,
                                          "column": 27
                                        }
                                      },
                                      "value": 1,
                                      "rawValue": 1,
                                      "raw": "1"
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 15825,
                                    "end": 16329,
                                    "loc": {
                                      "start": {
                                        "line": 368,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 379,
                                        "column": 17
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15882,
                                        "end": 15915,
                                        "loc": {
                                          "start": {
                                            "line": 370,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 370,
                                            "column": 53
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15882,
                                          "end": 15914,
                                          "loc": {
                                            "start": {
                                              "line": 370,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 370,
                                              "column": 52
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15882,
                                            "end": 15891,
                                            "loc": {
                                              "start": {
                                                "line": 370,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 370,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid",
                                            "leadingComments": null
                                          },
                                          "arguments": [
                                            {
                                              "type": "BinaryExpression",
                                              "start": 15892,
                                              "end": 15907,
                                              "loc": {
                                                "start": {
                                                  "line": 370,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 370,
                                                  "column": 45
                                                }
                                              },
                                              "left": {
                                                "type": "UnaryExpression",
                                                "start": 15892,
                                                "end": 15903,
                                                "loc": {
                                                  "start": {
                                                    "line": 370,
                                                    "column": 30
                                                  },
                                                  "end": {
                                                    "line": 370,
                                                    "column": 41
                                                  }
                                                },
                                                "operator": "-",
                                                "prefix": true,
                                                "argument": {
                                                  "type": "Identifier",
                                                  "start": 15893,
                                                  "end": 15903,
                                                  "loc": {
                                                    "start": {
                                                      "line": 370,
                                                      "column": 31
                                                    },
                                                    "end": {
                                                      "line": 370,
                                                      "column": 41
                                                    }
                                                  },
                                                  "name": "screenSize"
                                                }
                                              },
                                              "operator": "/",
                                              "right": {
                                                "type": "Literal",
                                                "start": 15906,
                                                "end": 15907,
                                                "loc": {
                                                  "start": {
                                                    "line": 370,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 370,
                                                    "column": 45
                                                  }
                                                },
                                                "value": 2,
                                                "rawValue": 2,
                                                "raw": "2"
                                              }
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15909,
                                              "end": 15910,
                                              "loc": {
                                                "start": {
                                                  "line": 370,
                                                  "column": 47
                                                },
                                                "end": {
                                                  "line": 370,
                                                  "column": 48
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15912,
                                              "end": 15913,
                                              "loc": {
                                                "start": {
                                                  "line": 370,
                                                  "column": 50
                                                },
                                                "end": {
                                                  "line": 370,
                                                  "column": 51
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ],
                                          "leadingComments": null
                                        },
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": " x \\ axisX",
                                            "start": 15848,
                                            "end": 15860,
                                            "loc": {
                                              "start": {
                                                "line": 369,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 369,
                                                "column": 32
                                              }
                                            },
                                            "range": [
                                              15848,
                                              15860
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15937,
                                        "end": 15964,
                                        "loc": {
                                          "start": {
                                            "line": 371,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 371,
                                            "column": 47
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15937,
                                          "end": 15963,
                                          "loc": {
                                            "start": {
                                              "line": 371,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 371,
                                              "column": 46
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15937,
                                            "end": 15946,
                                            "loc": {
                                              "start": {
                                                "line": 371,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 371,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid"
                                          },
                                          "arguments": [
                                            {
                                              "type": "UnaryExpression",
                                              "start": 15947,
                                              "end": 15956,
                                              "loc": {
                                                "start": {
                                                  "line": 371,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 371,
                                                  "column": 39
                                                }
                                              },
                                              "operator": "-",
                                              "prefix": true,
                                              "argument": {
                                                "type": "Identifier",
                                                "start": 15948,
                                                "end": 15956,
                                                "loc": {
                                                  "start": {
                                                    "line": 371,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 371,
                                                    "column": 39
                                                  }
                                                },
                                                "name": "axisSize"
                                              }
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15958,
                                              "end": 15959,
                                              "loc": {
                                                "start": {
                                                  "line": 371,
                                                  "column": 41
                                                },
                                                "end": {
                                                  "line": 371,
                                                  "column": 42
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15961,
                                              "end": 15962,
                                              "loc": {
                                                "start": {
                                                  "line": 371,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 371,
                                                  "column": 45
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15986,
                                        "end": 16019,
                                        "loc": {
                                          "start": {
                                            "line": 372,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 372,
                                            "column": 53
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15986,
                                          "end": 16018,
                                          "loc": {
                                            "start": {
                                              "line": 372,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 372,
                                              "column": 52
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15986,
                                            "end": 15995,
                                            "loc": {
                                              "start": {
                                                "line": 372,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 372,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid"
                                          },
                                          "arguments": [
                                            {
                                              "type": "BinaryExpression",
                                              "start": 15997,
                                              "end": 16011,
                                              "loc": {
                                                "start": {
                                                  "line": 372,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 372,
                                                  "column": 45
                                                }
                                              },
                                              "left": {
                                                "type": "Identifier",
                                                "start": 15997,
                                                "end": 16007,
                                                "loc": {
                                                  "start": {
                                                    "line": 372,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 372,
                                                    "column": 41
                                                  }
                                                },
                                                "name": "screenSize"
                                              },
                                              "operator": "/",
                                              "right": {
                                                "type": "Literal",
                                                "start": 16010,
                                                "end": 16011,
                                                "loc": {
                                                  "start": {
                                                    "line": 372,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 372,
                                                    "column": 45
                                                  }
                                                },
                                                "value": 2,
                                                "rawValue": 2,
                                                "raw": "2"
                                              }
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 16013,
                                              "end": 16014,
                                              "loc": {
                                                "start": {
                                                  "line": 372,
                                                  "column": 47
                                                },
                                                "end": {
                                                  "line": 372,
                                                  "column": 48
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 16016,
                                              "end": 16017,
                                              "loc": {
                                                "start": {
                                                  "line": 372,
                                                  "column": 50
                                                },
                                                "end": {
                                                  "line": 372,
                                                  "column": 51
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 16041,
                                        "end": 16068,
                                        "loc": {
                                          "start": {
                                            "line": 373,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 373,
                                            "column": 47
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 16041,
                                          "end": 16067,
                                          "loc": {
                                            "start": {
                                              "line": 373,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 373,
                                              "column": 46
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 16041,
                                            "end": 16050,
                                            "loc": {
                                              "start": {
                                                "line": 373,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 373,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid"
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 16052,
                                              "end": 16060,
                                              "loc": {
                                                "start": {
                                                  "line": 373,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 373,
                                                  "column": 39
                                                }
                                              },
                                              "name": "axisSize"
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 16062,
                                              "end": 16063,
                                              "loc": {
                                                "start": {
                                                  "line": 373,
                                                  "column": 41
                                                },
                                                "end": {
                                                  "line": 373,
                                                  "column": 42
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 16065,
                                              "end": 16066,
                                              "loc": {
                                                "start": {
                                                  "line": 373,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 373,
                                                  "column": 45
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ]
                                        },
                                        "trailingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": " y \\ axisY",
                                            "start": 16090,
                                            "end": 16102,
                                            "loc": {
                                              "start": {
                                                "line": 374,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 374,
                                                "column": 32
                                              }
                                            },
                                            "range": [
                                              16090,
                                              16102
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 16124,
                                        "end": 16157,
                                        "loc": {
                                          "start": {
                                            "line": 375,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 375,
                                            "column": 53
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 16124,
                                          "end": 16156,
                                          "loc": {
                                            "start": {
                                              "line": 375,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 375,
                                              "column": 52
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 16124,
                                            "end": 16133,
                                            "loc": {
                                              "start": {
                                                "line": 375,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 375,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid",
                                            "leadingComments": null
                                          },
                                          "arguments": [
                                            {
                                              "type": "Literal",
                                              "start": 16134,
                                              "end": 16135,
                                              "loc": {
                                                "start": {
                                                  "line": 375,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 375,
                                                  "column": 31
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "BinaryExpression",
                                              "start": 16138,
                                              "end": 16152,
                                              "loc": {
                                                "start": {
                                                  "line": 375,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 375,
                                                  "column": 48
                                                }
                                              },
                                              "left": {
                                                "type": "Identifier",
                                                "start": 16138,
                                                "end": 16148,
                                                "loc": {
                                                  "start": {
                                                    "line": 375,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 375,
                                                    "column": 44
                                                  }
                                                },
                                                "name": "screenSize"
                                              },
                                              "operator": "/",
                                              "right": {
                                                "type": "Literal",
                                                "start": 16151,
                                                "end": 16152,
                                                "loc": {
                                                  "start": {
                                                    "line": 375,
                                                    "column": 47
                                                  },
                                                  "end": {
                                                    "line": 375,
                                                    "column": 48
                                                  }
                                                },
                                                "value": 2,
                                                "rawValue": 2,
                                                "raw": "2"
                                              }
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 16154,
                                              "end": 16155,
                                              "loc": {
                                                "start": {
                                                  "line": 375,
                                                  "column": 50
                                                },
                                                "end": {
                                                  "line": 375,
                                                  "column": 51
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ],
                                          "leadingComments": null
                                        },
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": " y \\ axisY",
                                            "start": 16090,
                                            "end": 16102,
                                            "loc": {
                                              "start": {
                                                "line": 374,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 374,
                                                "column": 32
                                              }
                                            },
                                            "range": [
                                              16090,
                                              16102
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 16179,
                                        "end": 16206,
                                        "loc": {
                                          "start": {
                                            "line": 376,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 376,
                                            "column": 47
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 16179,
                                          "end": 16205,
                                          "loc": {
                                            "start": {
                                              "line": 376,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 376,
                                              "column": 46
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 16179,
                                            "end": 16188,
                                            "loc": {
                                              "start": {
                                                "line": 376,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 376,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid"
                                          },
                                          "arguments": [
                                            {
                                              "type": "Literal",
                                              "start": 16189,
                                              "end": 16190,
                                              "loc": {
                                                "start": {
                                                  "line": 376,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 376,
                                                  "column": 31
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 16193,
                                              "end": 16201,
                                              "loc": {
                                                "start": {
                                                  "line": 376,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 376,
                                                  "column": 42
                                                }
                                              },
                                              "name": "axisSize"
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 16203,
                                              "end": 16204,
                                              "loc": {
                                                "start": {
                                                  "line": 376,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 376,
                                                  "column": 45
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 16228,
                                        "end": 16261,
                                        "loc": {
                                          "start": {
                                            "line": 377,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 377,
                                            "column": 53
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 16228,
                                          "end": 16260,
                                          "loc": {
                                            "start": {
                                              "line": 377,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 377,
                                              "column": 52
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 16228,
                                            "end": 16237,
                                            "loc": {
                                              "start": {
                                                "line": 377,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 377,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid"
                                          },
                                          "arguments": [
                                            {
                                              "type": "Literal",
                                              "start": 16238,
                                              "end": 16239,
                                              "loc": {
                                                "start": {
                                                  "line": 377,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 377,
                                                  "column": 31
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "BinaryExpression",
                                              "start": 16241,
                                              "end": 16256,
                                              "loc": {
                                                "start": {
                                                  "line": 377,
                                                  "column": 33
                                                },
                                                "end": {
                                                  "line": 377,
                                                  "column": 48
                                                }
                                              },
                                              "left": {
                                                "type": "UnaryExpression",
                                                "start": 16241,
                                                "end": 16252,
                                                "loc": {
                                                  "start": {
                                                    "line": 377,
                                                    "column": 33
                                                  },
                                                  "end": {
                                                    "line": 377,
                                                    "column": 44
                                                  }
                                                },
                                                "operator": "-",
                                                "prefix": true,
                                                "argument": {
                                                  "type": "Identifier",
                                                  "start": 16242,
                                                  "end": 16252,
                                                  "loc": {
                                                    "start": {
                                                      "line": 377,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 377,
                                                      "column": 44
                                                    }
                                                  },
                                                  "name": "screenSize"
                                                }
                                              },
                                              "operator": "/",
                                              "right": {
                                                "type": "Literal",
                                                "start": 16255,
                                                "end": 16256,
                                                "loc": {
                                                  "start": {
                                                    "line": 377,
                                                    "column": 47
                                                  },
                                                  "end": {
                                                    "line": 377,
                                                    "column": 48
                                                  }
                                                },
                                                "value": 2,
                                                "rawValue": 2,
                                                "raw": "2"
                                              }
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 16258,
                                              "end": 16259,
                                              "loc": {
                                                "start": {
                                                  "line": 377,
                                                  "column": 50
                                                },
                                                "end": {
                                                  "line": 377,
                                                  "column": 51
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 16283,
                                        "end": 16310,
                                        "loc": {
                                          "start": {
                                            "line": 378,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 378,
                                            "column": 47
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 16283,
                                          "end": 16309,
                                          "loc": {
                                            "start": {
                                              "line": 378,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 378,
                                              "column": 46
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 16283,
                                            "end": 16292,
                                            "loc": {
                                              "start": {
                                                "line": 378,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 378,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid"
                                          },
                                          "arguments": [
                                            {
                                              "type": "Literal",
                                              "start": 16293,
                                              "end": 16294,
                                              "loc": {
                                                "start": {
                                                  "line": 378,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 378,
                                                  "column": 31
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "UnaryExpression",
                                              "start": 16296,
                                              "end": 16305,
                                              "loc": {
                                                "start": {
                                                  "line": 378,
                                                  "column": 33
                                                },
                                                "end": {
                                                  "line": 378,
                                                  "column": 42
                                                }
                                              },
                                              "operator": "-",
                                              "prefix": true,
                                              "argument": {
                                                "type": "Identifier",
                                                "start": 16297,
                                                "end": 16305,
                                                "loc": {
                                                  "start": {
                                                    "line": 378,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 378,
                                                    "column": 42
                                                  }
                                                },
                                                "name": "axisSize"
                                              }
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 16307,
                                              "end": 16308,
                                              "loc": {
                                                "start": {
                                                  "line": 378,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 378,
                                                  "column": 45
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  },
                                  "alternate": null
                                }
                              ],
                              "trailingComments": null
                            },
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": " axis",
                                "start": 16360,
                                "end": 16367,
                                "loc": {
                                  "start": {
                                    "line": 382,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 382,
                                    "column": 19
                                  }
                                },
                                "range": [
                                  16360,
                                  16367
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16381,
                            "end": 16408,
                            "loc": {
                              "start": {
                                "line": 383,
                                "column": 12
                              },
                              "end": {
                                "line": 383,
                                "column": 39
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16381,
                              "end": 16407,
                              "loc": {
                                "start": {
                                  "line": 383,
                                  "column": 12
                                },
                                "end": {
                                  "line": 383,
                                  "column": 38
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16381,
                                "end": 16390,
                                "loc": {
                                  "start": {
                                    "line": 383,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 383,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis",
                                "leadingComments": null
                              },
                              "arguments": [
                                {
                                  "type": "UnaryExpression",
                                  "start": 16391,
                                  "end": 16400,
                                  "loc": {
                                    "start": {
                                      "line": 383,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 383,
                                      "column": 31
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 16392,
                                    "end": 16400,
                                    "loc": {
                                      "start": {
                                        "line": 383,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 383,
                                        "column": 31
                                      }
                                    },
                                    "name": "axisSize"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16402,
                                  "end": 16403,
                                  "loc": {
                                    "start": {
                                      "line": 383,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 383,
                                      "column": 34
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 16405,
                                  "end": 16406,
                                  "loc": {
                                    "start": {
                                      "line": 383,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 383,
                                      "column": 37
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ],
                              "leadingComments": null
                            },
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " axis",
                                "start": 16360,
                                "end": 16367,
                                "loc": {
                                  "start": {
                                    "line": 382,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 382,
                                    "column": 19
                                  }
                                },
                                "range": [
                                  16360,
                                  16367
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16422,
                            "end": 16449,
                            "loc": {
                              "start": {
                                "line": 384,
                                "column": 12
                              },
                              "end": {
                                "line": 384,
                                "column": 39
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16422,
                              "end": 16448,
                              "loc": {
                                "start": {
                                  "line": 384,
                                  "column": 12
                                },
                                "end": {
                                  "line": 384,
                                  "column": 38
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16422,
                                "end": 16431,
                                "loc": {
                                  "start": {
                                    "line": 384,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 384,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 16433,
                                  "end": 16441,
                                  "loc": {
                                    "start": {
                                      "line": 384,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 384,
                                      "column": 31
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                {
                                  "type": "Literal",
                                  "start": 16443,
                                  "end": 16444,
                                  "loc": {
                                    "start": {
                                      "line": 384,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 384,
                                      "column": 34
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 16446,
                                  "end": 16447,
                                  "loc": {
                                    "start": {
                                      "line": 384,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 384,
                                      "column": 37
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16463,
                            "end": 16490,
                            "loc": {
                              "start": {
                                "line": 385,
                                "column": 12
                              },
                              "end": {
                                "line": 385,
                                "column": 39
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16463,
                              "end": 16489,
                              "loc": {
                                "start": {
                                  "line": 385,
                                  "column": 12
                                },
                                "end": {
                                  "line": 385,
                                  "column": 38
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16463,
                                "end": 16472,
                                "loc": {
                                  "start": {
                                    "line": 385,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 385,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 16473,
                                  "end": 16474,
                                  "loc": {
                                    "start": {
                                      "line": 385,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 385,
                                      "column": 23
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "UnaryExpression",
                                  "start": 16476,
                                  "end": 16485,
                                  "loc": {
                                    "start": {
                                      "line": 385,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 385,
                                      "column": 34
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 16477,
                                    "end": 16485,
                                    "loc": {
                                      "start": {
                                        "line": 385,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 385,
                                        "column": 34
                                      }
                                    },
                                    "name": "axisSize"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16487,
                                  "end": 16488,
                                  "loc": {
                                    "start": {
                                      "line": 385,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 385,
                                      "column": 37
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16504,
                            "end": 16531,
                            "loc": {
                              "start": {
                                "line": 386,
                                "column": 12
                              },
                              "end": {
                                "line": 386,
                                "column": 39
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16504,
                              "end": 16530,
                              "loc": {
                                "start": {
                                  "line": 386,
                                  "column": 12
                                },
                                "end": {
                                  "line": 386,
                                  "column": 38
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16504,
                                "end": 16513,
                                "loc": {
                                  "start": {
                                    "line": 386,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 386,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 16514,
                                  "end": 16515,
                                  "loc": {
                                    "start": {
                                      "line": 386,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 386,
                                      "column": 23
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 16518,
                                  "end": 16526,
                                  "loc": {
                                    "start": {
                                      "line": 386,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 386,
                                      "column": 34
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                {
                                  "type": "Literal",
                                  "start": 16528,
                                  "end": 16529,
                                  "loc": {
                                    "start": {
                                      "line": 386,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 386,
                                      "column": 37
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            },
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": " arrows",
                                "start": 16545,
                                "end": 16554,
                                "loc": {
                                  "start": {
                                    "line": 387,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 387,
                                    "column": 21
                                  }
                                },
                                "range": [
                                  16545,
                                  16554
                                ]
                              }
                            ]
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 16568,
                            "end": 16601,
                            "loc": {
                              "start": {
                                "line": 388,
                                "column": 12
                              },
                              "end": {
                                "line": 388,
                                "column": 45
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 16572,
                                "end": 16600,
                                "loc": {
                                  "start": {
                                    "line": 388,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 388,
                                    "column": 44
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 16572,
                                  "end": 16582,
                                  "loc": {
                                    "start": {
                                      "line": 388,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 388,
                                      "column": 26
                                    }
                                  },
                                  "name": "arrowWidth",
                                  "leadingComments": null
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 16585,
                                  "end": 16600,
                                  "loc": {
                                    "start": {
                                      "line": 388,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 388,
                                      "column": 44
                                    }
                                  },
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 16585,
                                    "end": 16598,
                                    "loc": {
                                      "start": {
                                        "line": 388,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 388,
                                        "column": 42
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 16585,
                                      "end": 16589,
                                      "loc": {
                                        "start": {
                                          "line": 388,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 388,
                                          "column": 33
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 16590,
                                      "end": 16598,
                                      "loc": {
                                        "start": {
                                          "line": 388,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 388,
                                          "column": 42
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  },
                                  "operator": "/",
                                  "right": {
                                    "type": "Literal",
                                    "start": 16599,
                                    "end": 16600,
                                    "loc": {
                                      "start": {
                                        "line": 388,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 388,
                                        "column": 44
                                      }
                                    },
                                    "value": 4,
                                    "rawValue": 4,
                                    "raw": "4"
                                  }
                                },
                                "leadingComments": null
                              }
                            ],
                            "kind": "var",
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " arrows",
                                "start": 16545,
                                "end": 16554,
                                "loc": {
                                  "start": {
                                    "line": 387,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 387,
                                    "column": 21
                                  }
                                },
                                "range": [
                                  16545,
                                  16554
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16615,
                            "end": 16668,
                            "loc": {
                              "start": {
                                "line": 389,
                                "column": 12
                              },
                              "end": {
                                "line": 389,
                                "column": 65
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16615,
                              "end": 16667,
                              "loc": {
                                "start": {
                                  "line": 389,
                                  "column": 12
                                },
                                "end": {
                                  "line": 389,
                                  "column": 64
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16615,
                                "end": 16624,
                                "loc": {
                                  "start": {
                                    "line": 389,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 389,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 16625,
                                  "end": 16649,
                                  "loc": {
                                    "start": {
                                      "line": 389,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 389,
                                      "column": 46
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16625,
                                    "end": 16633,
                                    "loc": {
                                      "start": {
                                        "line": 389,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 389,
                                        "column": 30
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "-",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 16636,
                                    "end": 16649,
                                    "loc": {
                                      "start": {
                                        "line": 389,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 389,
                                        "column": 46
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 16636,
                                      "end": 16640,
                                      "loc": {
                                        "start": {
                                          "line": 389,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 389,
                                          "column": 37
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 16641,
                                      "end": 16649,
                                      "loc": {
                                        "start": {
                                          "line": 389,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 389,
                                          "column": 46
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  }
                                },
                                {
                                  "type": "UnaryExpression",
                                  "start": 16651,
                                  "end": 16663,
                                  "loc": {
                                    "start": {
                                      "line": 389,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 389,
                                      "column": 60
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 16653,
                                    "end": 16663,
                                    "loc": {
                                      "start": {
                                        "line": 389,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 389,
                                        "column": 60
                                      }
                                    },
                                    "name": "arrowWidth"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16665,
                                  "end": 16666,
                                  "loc": {
                                    "start": {
                                      "line": 389,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 389,
                                      "column": 63
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16682,
                            "end": 16708,
                            "loc": {
                              "start": {
                                "line": 390,
                                "column": 12
                              },
                              "end": {
                                "line": 390,
                                "column": 38
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16682,
                              "end": 16707,
                              "loc": {
                                "start": {
                                  "line": 390,
                                  "column": 12
                                },
                                "end": {
                                  "line": 390,
                                  "column": 37
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16682,
                                "end": 16691,
                                "loc": {
                                  "start": {
                                    "line": 390,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 390,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 16692,
                                  "end": 16700,
                                  "loc": {
                                    "start": {
                                      "line": 390,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 390,
                                      "column": 30
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                {
                                  "type": "Literal",
                                  "start": 16702,
                                  "end": 16703,
                                  "loc": {
                                    "start": {
                                      "line": 390,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 390,
                                      "column": 33
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 16705,
                                  "end": 16706,
                                  "loc": {
                                    "start": {
                                      "line": 390,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 390,
                                      "column": 36
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16722,
                            "end": 16775,
                            "loc": {
                              "start": {
                                "line": 391,
                                "column": 12
                              },
                              "end": {
                                "line": 391,
                                "column": 65
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16722,
                              "end": 16774,
                              "loc": {
                                "start": {
                                  "line": 391,
                                  "column": 12
                                },
                                "end": {
                                  "line": 391,
                                  "column": 64
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16722,
                                "end": 16731,
                                "loc": {
                                  "start": {
                                    "line": 391,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 391,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 16732,
                                  "end": 16756,
                                  "loc": {
                                    "start": {
                                      "line": 391,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 391,
                                      "column": 46
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16732,
                                    "end": 16740,
                                    "loc": {
                                      "start": {
                                        "line": 391,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 391,
                                        "column": 30
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "-",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 16743,
                                    "end": 16756,
                                    "loc": {
                                      "start": {
                                        "line": 391,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 391,
                                        "column": 46
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 16743,
                                      "end": 16747,
                                      "loc": {
                                        "start": {
                                          "line": 391,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 391,
                                          "column": 37
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 16748,
                                      "end": 16756,
                                      "loc": {
                                        "start": {
                                          "line": 391,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 391,
                                          "column": 46
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  }
                                },
                                {
                                  "type": "UnaryExpression",
                                  "start": 16758,
                                  "end": 16770,
                                  "loc": {
                                    "start": {
                                      "line": 391,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 391,
                                      "column": 60
                                    }
                                  },
                                  "operator": "+",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 16760,
                                    "end": 16770,
                                    "loc": {
                                      "start": {
                                        "line": 391,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 391,
                                        "column": 60
                                      }
                                    },
                                    "name": "arrowWidth"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16772,
                                  "end": 16773,
                                  "loc": {
                                    "start": {
                                      "line": 391,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 391,
                                      "column": 63
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16789,
                            "end": 16815,
                            "loc": {
                              "start": {
                                "line": 392,
                                "column": 12
                              },
                              "end": {
                                "line": 392,
                                "column": 38
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16789,
                              "end": 16814,
                              "loc": {
                                "start": {
                                  "line": 392,
                                  "column": 12
                                },
                                "end": {
                                  "line": 392,
                                  "column": 37
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16789,
                                "end": 16798,
                                "loc": {
                                  "start": {
                                    "line": 392,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 392,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 16799,
                                  "end": 16807,
                                  "loc": {
                                    "start": {
                                      "line": 392,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 392,
                                      "column": 30
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                {
                                  "type": "Literal",
                                  "start": 16809,
                                  "end": 16810,
                                  "loc": {
                                    "start": {
                                      "line": 392,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 392,
                                      "column": 33
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 16812,
                                  "end": 16813,
                                  "loc": {
                                    "start": {
                                      "line": 392,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 392,
                                      "column": 36
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16829,
                            "end": 16881,
                            "loc": {
                              "start": {
                                "line": 393,
                                "column": 12
                              },
                              "end": {
                                "line": 393,
                                "column": 64
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16829,
                              "end": 16880,
                              "loc": {
                                "start": {
                                  "line": 393,
                                  "column": 12
                                },
                                "end": {
                                  "line": 393,
                                  "column": 63
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16829,
                                "end": 16838,
                                "loc": {
                                  "start": {
                                    "line": 393,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 393,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "UnaryExpression",
                                  "start": 16839,
                                  "end": 16850,
                                  "loc": {
                                    "start": {
                                      "line": 393,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 393,
                                      "column": 33
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 16840,
                                    "end": 16850,
                                    "loc": {
                                      "start": {
                                        "line": 393,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 393,
                                        "column": 33
                                      }
                                    },
                                    "name": "arrowWidth"
                                  }
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 16852,
                                  "end": 16876,
                                  "loc": {
                                    "start": {
                                      "line": 393,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 393,
                                      "column": 59
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16852,
                                    "end": 16860,
                                    "loc": {
                                      "start": {
                                        "line": 393,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 393,
                                        "column": 43
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "-",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 16863,
                                    "end": 16876,
                                    "loc": {
                                      "start": {
                                        "line": 393,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 393,
                                        "column": 59
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 16863,
                                      "end": 16867,
                                      "loc": {
                                        "start": {
                                          "line": 393,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 393,
                                          "column": 50
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 16868,
                                      "end": 16876,
                                      "loc": {
                                        "start": {
                                          "line": 393,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 393,
                                          "column": 59
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16878,
                                  "end": 16879,
                                  "loc": {
                                    "start": {
                                      "line": 393,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 393,
                                      "column": 62
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16895,
                            "end": 16921,
                            "loc": {
                              "start": {
                                "line": 394,
                                "column": 12
                              },
                              "end": {
                                "line": 394,
                                "column": 38
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16895,
                              "end": 16920,
                              "loc": {
                                "start": {
                                  "line": 394,
                                  "column": 12
                                },
                                "end": {
                                  "line": 394,
                                  "column": 37
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16895,
                                "end": 16904,
                                "loc": {
                                  "start": {
                                    "line": 394,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 394,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 16905,
                                  "end": 16906,
                                  "loc": {
                                    "start": {
                                      "line": 394,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 394,
                                      "column": 23
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 16908,
                                  "end": 16916,
                                  "loc": {
                                    "start": {
                                      "line": 394,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 394,
                                      "column": 33
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                {
                                  "type": "Literal",
                                  "start": 16918,
                                  "end": 16919,
                                  "loc": {
                                    "start": {
                                      "line": 394,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 394,
                                      "column": 36
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16935,
                            "end": 16987,
                            "loc": {
                              "start": {
                                "line": 395,
                                "column": 12
                              },
                              "end": {
                                "line": 395,
                                "column": 64
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16935,
                              "end": 16986,
                              "loc": {
                                "start": {
                                  "line": 395,
                                  "column": 12
                                },
                                "end": {
                                  "line": 395,
                                  "column": 63
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16935,
                                "end": 16944,
                                "loc": {
                                  "start": {
                                    "line": 395,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 395,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 16946,
                                  "end": 16956,
                                  "loc": {
                                    "start": {
                                      "line": 395,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 395,
                                      "column": 33
                                    }
                                  },
                                  "name": "arrowWidth"
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 16958,
                                  "end": 16982,
                                  "loc": {
                                    "start": {
                                      "line": 395,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 395,
                                      "column": 59
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16958,
                                    "end": 16966,
                                    "loc": {
                                      "start": {
                                        "line": 395,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 395,
                                        "column": 43
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "-",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 16969,
                                    "end": 16982,
                                    "loc": {
                                      "start": {
                                        "line": 395,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 395,
                                        "column": 59
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 16969,
                                      "end": 16973,
                                      "loc": {
                                        "start": {
                                          "line": 395,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 395,
                                          "column": 50
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 16974,
                                      "end": 16982,
                                      "loc": {
                                        "start": {
                                          "line": 395,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 395,
                                          "column": 59
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16984,
                                  "end": 16985,
                                  "loc": {
                                    "start": {
                                      "line": 395,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 395,
                                      "column": 62
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 17001,
                            "end": 17027,
                            "loc": {
                              "start": {
                                "line": 396,
                                "column": 12
                              },
                              "end": {
                                "line": 396,
                                "column": 38
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 17001,
                              "end": 17026,
                              "loc": {
                                "start": {
                                  "line": 396,
                                  "column": 12
                                },
                                "end": {
                                  "line": 396,
                                  "column": 37
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 17001,
                                "end": 17010,
                                "loc": {
                                  "start": {
                                    "line": 396,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 396,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 17011,
                                  "end": 17012,
                                  "loc": {
                                    "start": {
                                      "line": 396,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 396,
                                      "column": 23
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 17014,
                                  "end": 17022,
                                  "loc": {
                                    "start": {
                                      "line": 396,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 396,
                                      "column": 33
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                {
                                  "type": "Literal",
                                  "start": 17024,
                                  "end": 17025,
                                  "loc": {
                                    "start": {
                                      "line": 396,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 396,
                                      "column": 36
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            },
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": " symbols \"x\", \"y\"",
                                "start": 17041,
                                "end": 17060,
                                "loc": {
                                  "start": {
                                    "line": 397,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 397,
                                    "column": 31
                                  }
                                },
                                "range": [
                                  17041,
                                  17060
                                ]
                              }
                            ]
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 17074,
                            "end": 17213,
                            "loc": {
                              "start": {
                                "line": 398,
                                "column": 12
                              },
                              "end": {
                                "line": 400,
                                "column": 49
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 17078,
                                "end": 17104,
                                "loc": {
                                  "start": {
                                    "line": 398,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 398,
                                    "column": 42
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 17078,
                                  "end": 17090,
                                  "loc": {
                                    "start": {
                                      "line": 398,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 398,
                                      "column": 28
                                    }
                                  },
                                  "name": "letterOffset",
                                  "leadingComments": null
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 17093,
                                  "end": 17104,
                                  "loc": {
                                    "start": {
                                      "line": 398,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 398,
                                      "column": 42
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 17093,
                                    "end": 17101,
                                    "loc": {
                                      "start": {
                                        "line": 398,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 398,
                                        "column": 39
                                      }
                                    },
                                    "left": {
                                      "type": "Literal",
                                      "start": 17093,
                                      "end": 17094,
                                      "loc": {
                                        "start": {
                                          "line": 398,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 398,
                                          "column": 32
                                        }
                                      },
                                      "value": 3,
                                      "rawValue": 3,
                                      "raw": "3"
                                    },
                                    "operator": "*",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 17097,
                                      "end": 17101,
                                      "loc": {
                                        "start": {
                                          "line": 398,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 398,
                                          "column": 39
                                        }
                                      },
                                      "name": "step"
                                    }
                                  },
                                  "operator": "/",
                                  "right": {
                                    "type": "Literal",
                                    "start": 17102,
                                    "end": 17104,
                                    "loc": {
                                      "start": {
                                        "line": 398,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 398,
                                        "column": 42
                                      }
                                    },
                                    "value": 10,
                                    "rawValue": 10,
                                    "raw": "10"
                                  }
                                },
                                "leadingComments": null
                              },
                              {
                                "type": "VariableDeclarator",
                                "start": 17123,
                                "end": 17161,
                                "loc": {
                                  "start": {
                                    "line": 399,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 399,
                                    "column": 54
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 17123,
                                  "end": 17135,
                                  "loc": {
                                    "start": {
                                      "line": 399,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 399,
                                      "column": 28
                                    }
                                  },
                                  "name": "letterHeight"
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 17138,
                                  "end": 17161,
                                  "loc": {
                                    "start": {
                                      "line": 399,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 399,
                                      "column": 54
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 17138,
                                    "end": 17142,
                                    "loc": {
                                      "start": {
                                        "line": 399,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 399,
                                        "column": 35
                                      }
                                    },
                                    "name": "step"
                                  },
                                  "operator": "-",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 17145,
                                    "end": 17161,
                                    "loc": {
                                      "start": {
                                        "line": 399,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 399,
                                        "column": 54
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 17145,
                                      "end": 17157,
                                      "loc": {
                                        "start": {
                                          "line": 399,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 399,
                                          "column": 50
                                        }
                                      },
                                      "name": "letterOffset"
                                    },
                                    "operator": "*",
                                    "right": {
                                      "type": "Literal",
                                      "start": 17160,
                                      "end": 17161,
                                      "loc": {
                                        "start": {
                                          "line": 399,
                                          "column": 53
                                        },
                                        "end": {
                                          "line": 399,
                                          "column": 54
                                        }
                                      },
                                      "value": 2,
                                      "rawValue": 2,
                                      "raw": "2"
                                    }
                                  }
                                }
                              },
                              {
                                "type": "VariableDeclarator",
                                "start": 17180,
                                "end": 17212,
                                "loc": {
                                  "start": {
                                    "line": 400,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 400,
                                    "column": 48
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 17180,
                                  "end": 17191,
                                  "loc": {
                                    "start": {
                                      "line": 400,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 400,
                                      "column": 27
                                    }
                                  },
                                  "name": "letterWidth"
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 17194,
                                  "end": 17212,
                                  "loc": {
                                    "start": {
                                      "line": 400,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 400,
                                      "column": 48
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 17194,
                                    "end": 17206,
                                    "loc": {
                                      "start": {
                                        "line": 400,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 400,
                                        "column": 42
                                      }
                                    },
                                    "name": "letterHeight"
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "Literal",
                                    "start": 17209,
                                    "end": 17212,
                                    "loc": {
                                      "start": {
                                        "line": 400,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 400,
                                        "column": 48
                                      }
                                    },
                                    "value": 0.6,
                                    "rawValue": 0.6,
                                    "raw": "0.6"
                                  }
                                }
                              }
                            ],
                            "kind": "var",
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " symbols \"x\", \"y\"",
                                "start": 17041,
                                "end": 17060,
                                "loc": {
                                  "start": {
                                    "line": 397,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 397,
                                    "column": 31
                                  }
                                },
                                "range": [
                                  17041,
                                  17060
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 17227,
                            "end": 17279,
                            "loc": {
                              "start": {
                                "line": 401,
                                "column": 12
                              },
                              "end": {
                                "line": 401,
                                "column": 64
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 17227,
                              "end": 17278,
                              "loc": {
                                "start": {
                                  "line": 401,
                                  "column": 12
                                },
                                "end": {
                                  "line": 401,
                                  "column": 63
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 17227,
                                "end": 17236,
                                "loc": {
                                  "start": {
                                    "line": 401,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 401,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 17237,
                                  "end": 17260,
                                  "loc": {
                                    "start": {
                                      "line": 401,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 401,
                                      "column": 45
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 17237,
                                    "end": 17245,
                                    "loc": {
                                      "start": {
                                        "line": 401,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 401,
                                        "column": 30
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 17248,
                                    "end": 17260,
                                    "loc": {
                                      "start": {
                                        "line": 401,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 401,
                                        "column": 45
                                      }
                                    },
                                    "name": "letterOffset"
                                  }
                                },
                                {
                                  "type": "Identifier",
                                  "start": 17262,
                                  "end": 17274,
                                  "loc": {
                                    "start": {
                                      "line": 401,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 401,
                                      "column": 59
                                    }
                                  },
                                  "name": "letterOffset"
                                },
                                {
                                  "type": "Literal",
                                  "start": 17276,
                                  "end": 17277,
                                  "loc": {
                                    "start": {
                                      "line": 401,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 401,
                                      "column": 62
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 17293,
                            "end": 17374,
                            "loc": {
                              "start": {
                                "line": 402,
                                "column": 12
                              },
                              "end": {
                                "line": 402,
                                "column": 93
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 17293,
                              "end": 17373,
                              "loc": {
                                "start": {
                                  "line": 402,
                                  "column": 12
                                },
                                "end": {
                                  "line": 402,
                                  "column": 92
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 17293,
                                "end": 17302,
                                "loc": {
                                  "start": {
                                    "line": 402,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 402,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 17303,
                                  "end": 17340,
                                  "loc": {
                                    "start": {
                                      "line": 402,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 402,
                                      "column": 59
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 17303,
                                    "end": 17326,
                                    "loc": {
                                      "start": {
                                        "line": 402,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 402,
                                        "column": 45
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 17303,
                                      "end": 17311,
                                      "loc": {
                                        "start": {
                                          "line": 402,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 402,
                                          "column": 30
                                        }
                                      },
                                      "name": "axisSize"
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 17314,
                                      "end": 17326,
                                      "loc": {
                                        "start": {
                                          "line": 402,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 402,
                                          "column": 45
                                        }
                                      },
                                      "name": "letterOffset"
                                    }
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 17329,
                                    "end": 17340,
                                    "loc": {
                                      "start": {
                                        "line": 402,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 402,
                                        "column": 59
                                      }
                                    },
                                    "name": "letterWidth"
                                  }
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 17342,
                                  "end": 17369,
                                  "loc": {
                                    "start": {
                                      "line": 402,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 402,
                                      "column": 88
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 17342,
                                    "end": 17354,
                                    "loc": {
                                      "start": {
                                        "line": 402,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 402,
                                        "column": 73
                                      }
                                    },
                                    "name": "letterOffset"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 17357,
                                    "end": 17369,
                                    "loc": {
                                      "start": {
                                        "line": 402,
                                        "column": 76
                                      },
                                      "end": {
                                        "line": 402,
                                        "column": 88
                                      }
                                    },
                                    "name": "letterHeight"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 17371,
                                  "end": 17372,
                                  "loc": {
                                    "start": {
                                      "line": 402,
                                      "column": 90
                                    },
                                    "end": {
                                      "line": 402,
                                      "column": 91
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 17388,
                            "end": 17455,
                            "loc": {
                              "start": {
                                "line": 403,
                                "column": 12
                              },
                              "end": {
                                "line": 403,
                                "column": 79
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 17388,
                              "end": 17454,
                              "loc": {
                                "start": {
                                  "line": 403,
                                  "column": 12
                                },
                                "end": {
                                  "line": 403,
                                  "column": 78
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 17388,
                                "end": 17397,
                                "loc": {
                                  "start": {
                                    "line": 403,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 403,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 17398,
                                  "end": 17421,
                                  "loc": {
                                    "start": {
                                      "line": 403,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 403,
                                      "column": 45
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 17398,
                                    "end": 17406,
                                    "loc": {
                                      "start": {
                                        "line": 403,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 403,
                                        "column": 30
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 17409,
                                    "end": 17421,
                                    "loc": {
                                      "start": {
                                        "line": 403,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 403,
                                        "column": 45
                                      }
                                    },
                                    "name": "letterOffset"
                                  }
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 17423,
                                  "end": 17450,
                                  "loc": {
                                    "start": {
                                      "line": 403,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 403,
                                      "column": 74
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 17423,
                                    "end": 17435,
                                    "loc": {
                                      "start": {
                                        "line": 403,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 403,
                                        "column": 59
                                      }
                                    },
                                    "name": "letterOffset"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 17438,
                                    "end": 17450,
                                    "loc": {
                                      "start": {
                                        "line": 403,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 403,
                                        "column": 74
                                      }
                                    },
                                    "name": "letterHeight"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 17452,
                                  "end": 17453,
                                  "loc": {
                                    "start": {
                                      "line": 403,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 403,
                                      "column": 77
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 17469,
                            "end": 17535,
                            "loc": {
                              "start": {
                                "line": 404,
                                "column": 12
                              },
                              "end": {
                                "line": 404,
                                "column": 78
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 17469,
                              "end": 17534,
                              "loc": {
                                "start": {
                                  "line": 404,
                                  "column": 12
                                },
                                "end": {
                                  "line": 404,
                                  "column": 77
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 17469,
                                "end": 17478,
                                "loc": {
                                  "start": {
                                    "line": 404,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 404,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 17479,
                                  "end": 17516,
                                  "loc": {
                                    "start": {
                                      "line": 404,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 404,
                                      "column": 59
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 17479,
                                    "end": 17502,
                                    "loc": {
                                      "start": {
                                        "line": 404,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 404,
                                        "column": 45
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 17479,
                                      "end": 17487,
                                      "loc": {
                                        "start": {
                                          "line": 404,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 404,
                                          "column": 30
                                        }
                                      },
                                      "name": "axisSize"
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 17490,
                                      "end": 17502,
                                      "loc": {
                                        "start": {
                                          "line": 404,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 404,
                                          "column": 45
                                        }
                                      },
                                      "name": "letterOffset"
                                    }
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 17505,
                                    "end": 17516,
                                    "loc": {
                                      "start": {
                                        "line": 404,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 404,
                                        "column": 59
                                      }
                                    },
                                    "name": "letterWidth"
                                  }
                                },
                                {
                                  "type": "Identifier",
                                  "start": 17518,
                                  "end": 17530,
                                  "loc": {
                                    "start": {
                                      "line": 404,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 404,
                                      "column": 73
                                    }
                                  },
                                  "name": "letterOffset"
                                },
                                {
                                  "type": "Literal",
                                  "start": 17532,
                                  "end": 17533,
                                  "loc": {
                                    "start": {
                                      "line": 404,
                                      "column": 75
                                    },
                                    "end": {
                                      "line": 404,
                                      "column": 76
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 17549,
                            "end": 17601,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 12
                              },
                              "end": {
                                "line": 405,
                                "column": 64
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 17549,
                              "end": 17600,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 12
                                },
                                "end": {
                                  "line": 405,
                                  "column": 63
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 17549,
                                "end": 17558,
                                "loc": {
                                  "start": {
                                    "line": 405,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 405,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 17559,
                                  "end": 17571,
                                  "loc": {
                                    "start": {
                                      "line": 405,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 405,
                                      "column": 34
                                    }
                                  },
                                  "name": "letterOffset"
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 17573,
                                  "end": 17596,
                                  "loc": {
                                    "start": {
                                      "line": 405,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 405,
                                      "column": 59
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 17573,
                                    "end": 17581,
                                    "loc": {
                                      "start": {
                                        "line": 405,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 405,
                                        "column": 44
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 17584,
                                    "end": 17596,
                                    "loc": {
                                      "start": {
                                        "line": 405,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 405,
                                        "column": 59
                                      }
                                    },
                                    "name": "letterOffset"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 17598,
                                  "end": 17599,
                                  "loc": {
                                    "start": {
                                      "line": 405,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 405,
                                      "column": 62
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 17615,
                            "end": 17696,
                            "loc": {
                              "start": {
                                "line": 406,
                                "column": 12
                              },
                              "end": {
                                "line": 406,
                                "column": 93
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 17615,
                              "end": 17695,
                              "loc": {
                                "start": {
                                  "line": 406,
                                  "column": 12
                                },
                                "end": {
                                  "line": 406,
                                  "column": 92
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 17615,
                                "end": 17624,
                                "loc": {
                                  "start": {
                                    "line": 406,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 406,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 17625,
                                  "end": 17651,
                                  "loc": {
                                    "start": {
                                      "line": 406,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 406,
                                      "column": 48
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 17625,
                                    "end": 17637,
                                    "loc": {
                                      "start": {
                                        "line": 406,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 406,
                                        "column": 34
                                      }
                                    },
                                    "name": "letterOffset"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 17640,
                                    "end": 17651,
                                    "loc": {
                                      "start": {
                                        "line": 406,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 406,
                                        "column": 48
                                      }
                                    },
                                    "name": "letterWidth"
                                  }
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 17653,
                                  "end": 17691,
                                  "loc": {
                                    "start": {
                                      "line": 406,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 406,
                                      "column": 88
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 17653,
                                    "end": 17676,
                                    "loc": {
                                      "start": {
                                        "line": 406,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 406,
                                        "column": 73
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 17653,
                                      "end": 17661,
                                      "loc": {
                                        "start": {
                                          "line": 406,
                                          "column": 50
                                        },
                                        "end": {
                                          "line": 406,
                                          "column": 58
                                        }
                                      },
                                      "name": "axisSize"
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 17664,
                                      "end": 17676,
                                      "loc": {
                                        "start": {
                                          "line": 406,
                                          "column": 61
                                        },
                                        "end": {
                                          "line": 406,
                                          "column": 73
                                        }
                                      },
                                      "name": "letterOffset"
                                    }
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 17679,
                                    "end": 17691,
                                    "loc": {
                                      "start": {
                                        "line": 406,
                                        "column": 76
                                      },
                                      "end": {
                                        "line": 406,
                                        "column": 88
                                      }
                                    },
                                    "name": "letterHeight"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 17693,
                                  "end": 17694,
                                  "loc": {
                                    "start": {
                                      "line": 406,
                                      "column": 90
                                    },
                                    "end": {
                                      "line": 406,
                                      "column": 91
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 17710,
                            "end": 17777,
                            "loc": {
                              "start": {
                                "line": 407,
                                "column": 12
                              },
                              "end": {
                                "line": 407,
                                "column": 79
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 17710,
                              "end": 17776,
                              "loc": {
                                "start": {
                                  "line": 407,
                                  "column": 12
                                },
                                "end": {
                                  "line": 407,
                                  "column": 78
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 17710,
                                "end": 17719,
                                "loc": {
                                  "start": {
                                    "line": 407,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 407,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 17720,
                                  "end": 17732,
                                  "loc": {
                                    "start": {
                                      "line": 407,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 407,
                                      "column": 34
                                    }
                                  },
                                  "name": "letterOffset"
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 17734,
                                  "end": 17772,
                                  "loc": {
                                    "start": {
                                      "line": 407,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 407,
                                      "column": 74
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 17734,
                                    "end": 17757,
                                    "loc": {
                                      "start": {
                                        "line": 407,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 407,
                                        "column": 59
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 17734,
                                      "end": 17742,
                                      "loc": {
                                        "start": {
                                          "line": 407,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 407,
                                          "column": 44
                                        }
                                      },
                                      "name": "axisSize"
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 17745,
                                      "end": 17757,
                                      "loc": {
                                        "start": {
                                          "line": 407,
                                          "column": 47
                                        },
                                        "end": {
                                          "line": 407,
                                          "column": 59
                                        }
                                      },
                                      "name": "letterOffset"
                                    }
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 17760,
                                    "end": 17772,
                                    "loc": {
                                      "start": {
                                        "line": 407,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 407,
                                        "column": 74
                                      }
                                    },
                                    "name": "letterHeight"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 17774,
                                  "end": 17775,
                                  "loc": {
                                    "start": {
                                      "line": 407,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 407,
                                      "column": 77
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 17791,
                            "end": 17880,
                            "loc": {
                              "start": {
                                "line": 408,
                                "column": 12
                              },
                              "end": {
                                "line": 408,
                                "column": 101
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 17791,
                              "end": 17879,
                              "loc": {
                                "start": {
                                  "line": 408,
                                  "column": 12
                                },
                                "end": {
                                  "line": 408,
                                  "column": 100
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 17791,
                                "end": 17800,
                                "loc": {
                                  "start": {
                                    "line": 408,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 408,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 17801,
                                  "end": 17831,
                                  "loc": {
                                    "start": {
                                      "line": 408,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 408,
                                      "column": 52
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 17801,
                                    "end": 17813,
                                    "loc": {
                                      "start": {
                                        "line": 408,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 408,
                                        "column": 34
                                      }
                                    },
                                    "name": "letterOffset"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 17816,
                                    "end": 17831,
                                    "loc": {
                                      "start": {
                                        "line": 408,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 408,
                                        "column": 52
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 17816,
                                      "end": 17827,
                                      "loc": {
                                        "start": {
                                          "line": 408,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 408,
                                          "column": 48
                                        }
                                      },
                                      "name": "letterWidth"
                                    },
                                    "operator": "/",
                                    "right": {
                                      "type": "Literal",
                                      "start": 17830,
                                      "end": 17831,
                                      "loc": {
                                        "start": {
                                          "line": 408,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 408,
                                          "column": 52
                                        }
                                      },
                                      "value": 2,
                                      "rawValue": 2,
                                      "raw": "2"
                                    }
                                  }
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 17833,
                                  "end": 17875,
                                  "loc": {
                                    "start": {
                                      "line": 408,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 408,
                                      "column": 96
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 17833,
                                    "end": 17856,
                                    "loc": {
                                      "start": {
                                        "line": 408,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 408,
                                        "column": 77
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 17833,
                                      "end": 17841,
                                      "loc": {
                                        "start": {
                                          "line": 408,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 408,
                                          "column": 62
                                        }
                                      },
                                      "name": "axisSize"
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 17844,
                                      "end": 17856,
                                      "loc": {
                                        "start": {
                                          "line": 408,
                                          "column": 65
                                        },
                                        "end": {
                                          "line": 408,
                                          "column": 77
                                        }
                                      },
                                      "name": "letterOffset"
                                    }
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 17859,
                                    "end": 17875,
                                    "loc": {
                                      "start": {
                                        "line": 408,
                                        "column": 80
                                      },
                                      "end": {
                                        "line": 408,
                                        "column": 96
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 17859,
                                      "end": 17871,
                                      "loc": {
                                        "start": {
                                          "line": 408,
                                          "column": 80
                                        },
                                        "end": {
                                          "line": 408,
                                          "column": 92
                                        }
                                      },
                                      "name": "letterHeight"
                                    },
                                    "operator": "/",
                                    "right": {
                                      "type": "Literal",
                                      "start": 17874,
                                      "end": 17875,
                                      "loc": {
                                        "start": {
                                          "line": 408,
                                          "column": 95
                                        },
                                        "end": {
                                          "line": 408,
                                          "column": 96
                                        }
                                      },
                                      "value": 2,
                                      "rawValue": 2,
                                      "raw": "2"
                                    }
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 17877,
                                  "end": 17878,
                                  "loc": {
                                    "start": {
                                      "line": 408,
                                      "column": 98
                                    },
                                    "end": {
                                      "line": 408,
                                      "column": 99
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            },
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": "note: vertex counts must not change after first render",
                                "start": 17896,
                                "end": 17952,
                                "loc": {
                                  "start": {
                                    "line": 410,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 410,
                                    "column": 68
                                  }
                                },
                                "range": [
                                  17896,
                                  17952
                                ]
                              }
                            ]
                          },
                          {
                            "type": "IfStatement",
                            "start": 17966,
                            "end": 18165,
                            "loc": {
                              "start": {
                                "line": 411,
                                "column": 12
                              },
                              "end": {
                                "line": 413,
                                "column": 73
                              }
                            },
                            "test": {
                              "type": "LogicalExpression",
                              "start": 17970,
                              "end": 18089,
                              "loc": {
                                "start": {
                                  "line": 411,
                                  "column": 16
                                },
                                "end": {
                                  "line": 412,
                                  "column": 65
                                }
                              },
                              "left": {
                                "type": "BinaryExpression",
                                "start": 17970,
                                "end": 18019,
                                "loc": {
                                  "start": {
                                    "line": 411,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 411,
                                    "column": 65
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 17970,
                                  "end": 17979,
                                  "loc": {
                                    "start": {
                                      "line": 411,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 411,
                                      "column": 25
                                    }
                                  },
                                  "name": "gridCount",
                                  "leadingComments": null
                                },
                                "operator": "!=",
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 17983,
                                  "end": 18019,
                                  "loc": {
                                    "start": {
                                      "line": 411,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 411,
                                      "column": 65
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 17983,
                                    "end": 18012,
                                    "loc": {
                                      "start": {
                                        "line": 411,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 411,
                                        "column": 58
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 17983,
                                      "end": 18003,
                                      "loc": {
                                        "start": {
                                          "line": 411,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 411,
                                          "column": 49
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 17983,
                                        "end": 17994,
                                        "loc": {
                                          "start": {
                                            "line": 411,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 411,
                                            "column": 40
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 17983,
                                          "end": 17987,
                                          "loc": {
                                            "start": {
                                              "line": 411,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 411,
                                              "column": 33
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 17988,
                                          "end": 17994,
                                          "loc": {
                                            "start": {
                                              "line": 411,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 411,
                                              "column": 40
                                            }
                                          },
                                          "name": "__grid"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 17995,
                                        "end": 18003,
                                        "loc": {
                                          "start": {
                                            "line": 411,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 411,
                                            "column": 49
                                          }
                                        },
                                        "name": "geometry"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18004,
                                      "end": 18012,
                                      "loc": {
                                        "start": {
                                          "line": 411,
                                          "column": 50
                                        },
                                        "end": {
                                          "line": 411,
                                          "column": 58
                                        }
                                      },
                                      "name": "vertices"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 18013,
                                    "end": 18019,
                                    "loc": {
                                      "start": {
                                        "line": 411,
                                        "column": 59
                                      },
                                      "end": {
                                        "line": 411,
                                        "column": 65
                                      }
                                    },
                                    "name": "length"
                                  },
                                  "computed": false
                                },
                                "leadingComments": null
                              },
                              "operator": "||",
                              "right": {
                                "type": "BinaryExpression",
                                "start": 18040,
                                "end": 18089,
                                "loc": {
                                  "start": {
                                    "line": 412,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 412,
                                    "column": 65
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 18040,
                                  "end": 18049,
                                  "loc": {
                                    "start": {
                                      "line": 412,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 412,
                                      "column": 25
                                    }
                                  },
                                  "name": "axisCount"
                                },
                                "operator": "!=",
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 18053,
                                  "end": 18089,
                                  "loc": {
                                    "start": {
                                      "line": 412,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 412,
                                      "column": 65
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 18053,
                                    "end": 18082,
                                    "loc": {
                                      "start": {
                                        "line": 412,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 412,
                                        "column": 58
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 18053,
                                      "end": 18073,
                                      "loc": {
                                        "start": {
                                          "line": 412,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 412,
                                          "column": 49
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 18053,
                                        "end": 18064,
                                        "loc": {
                                          "start": {
                                            "line": 412,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 412,
                                            "column": 40
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 18053,
                                          "end": 18057,
                                          "loc": {
                                            "start": {
                                              "line": 412,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 412,
                                              "column": 33
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 18058,
                                          "end": 18064,
                                          "loc": {
                                            "start": {
                                              "line": 412,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 412,
                                              "column": 40
                                            }
                                          },
                                          "name": "__axis"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 18065,
                                        "end": 18073,
                                        "loc": {
                                          "start": {
                                            "line": 412,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 412,
                                            "column": 49
                                          }
                                        },
                                        "name": "geometry"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18074,
                                      "end": 18082,
                                      "loc": {
                                        "start": {
                                          "line": 412,
                                          "column": 50
                                        },
                                        "end": {
                                          "line": 412,
                                          "column": 58
                                        }
                                      },
                                      "name": "vertices"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 18083,
                                    "end": 18089,
                                    "loc": {
                                      "start": {
                                        "line": 412,
                                        "column": 59
                                      },
                                      "end": {
                                        "line": 412,
                                        "column": 65
                                      }
                                    },
                                    "name": "length"
                                  },
                                  "computed": false
                                }
                              },
                              "leadingComments": null
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 18108,
                              "end": 18165,
                              "loc": {
                                "start": {
                                  "line": 413,
                                  "column": 16
                                },
                                "end": {
                                  "line": 413,
                                  "column": 73
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 18108,
                                "end": 18164,
                                "loc": {
                                  "start": {
                                    "line": 413,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 413,
                                    "column": 72
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 18108,
                                  "end": 18121,
                                  "loc": {
                                    "start": {
                                      "line": 413,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 413,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 18108,
                                    "end": 18115,
                                    "loc": {
                                      "start": {
                                        "line": 413,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 413,
                                        "column": 23
                                      }
                                    },
                                    "name": "console"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 18116,
                                    "end": 18121,
                                    "loc": {
                                      "start": {
                                        "line": 413,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 413,
                                        "column": 29
                                      }
                                    },
                                    "name": "error"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 18122,
                                    "end": 18163,
                                    "loc": {
                                      "start": {
                                        "line": 413,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 413,
                                        "column": 71
                                      }
                                    },
                                    "value": "Grid and axis vertex count has changed!",
                                    "rawValue": "Grid and axis vertex count has changed!",
                                    "raw": "\"Grid and axis vertex count has changed!\""
                                  }
                                ]
                              }
                            },
                            "alternate": null,
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": "note: vertex counts must not change after first render",
                                "start": 17896,
                                "end": 17952,
                                "loc": {
                                  "start": {
                                    "line": 410,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 410,
                                    "column": 68
                                  }
                                },
                                "range": [
                                  17896,
                                  17952
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 18181,
                            "end": 18228,
                            "loc": {
                              "start": {
                                "line": 415,
                                "column": 12
                              },
                              "end": {
                                "line": 415,
                                "column": 59
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 18181,
                              "end": 18227,
                              "loc": {
                                "start": {
                                  "line": 415,
                                  "column": 12
                                },
                                "end": {
                                  "line": 415,
                                  "column": 58
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 18181,
                                "end": 18220,
                                "loc": {
                                  "start": {
                                    "line": 415,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 415,
                                    "column": 51
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 18181,
                                  "end": 18201,
                                  "loc": {
                                    "start": {
                                      "line": 415,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 415,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 18181,
                                    "end": 18192,
                                    "loc": {
                                      "start": {
                                        "line": 415,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 415,
                                        "column": 23
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 18181,
                                      "end": 18185,
                                      "loc": {
                                        "start": {
                                          "line": 415,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 415,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18186,
                                      "end": 18192,
                                      "loc": {
                                        "start": {
                                          "line": 415,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 415,
                                          "column": 23
                                        }
                                      },
                                      "name": "__grid"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 18193,
                                    "end": 18201,
                                    "loc": {
                                      "start": {
                                        "line": 415,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 415,
                                        "column": 32
                                      }
                                    },
                                    "name": "geometry"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 18202,
                                  "end": 18220,
                                  "loc": {
                                    "start": {
                                      "line": 415,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 415,
                                      "column": 51
                                    }
                                  },
                                  "name": "verticesNeedUpdate"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 18223,
                                "end": 18227,
                                "loc": {
                                  "start": {
                                    "line": 415,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 415,
                                    "column": 58
                                  }
                                },
                                "value": true,
                                "rawValue": true,
                                "raw": "true"
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 18242,
                            "end": 18289,
                            "loc": {
                              "start": {
                                "line": 416,
                                "column": 12
                              },
                              "end": {
                                "line": 416,
                                "column": 59
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 18242,
                              "end": 18288,
                              "loc": {
                                "start": {
                                  "line": 416,
                                  "column": 12
                                },
                                "end": {
                                  "line": 416,
                                  "column": 58
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 18242,
                                "end": 18281,
                                "loc": {
                                  "start": {
                                    "line": 416,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 416,
                                    "column": 51
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 18242,
                                  "end": 18262,
                                  "loc": {
                                    "start": {
                                      "line": 416,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 416,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 18242,
                                    "end": 18253,
                                    "loc": {
                                      "start": {
                                        "line": 416,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 416,
                                        "column": 23
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 18242,
                                      "end": 18246,
                                      "loc": {
                                        "start": {
                                          "line": 416,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 416,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18247,
                                      "end": 18253,
                                      "loc": {
                                        "start": {
                                          "line": 416,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 416,
                                          "column": 23
                                        }
                                      },
                                      "name": "__axis"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 18254,
                                    "end": 18262,
                                    "loc": {
                                      "start": {
                                        "line": 416,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 416,
                                        "column": 32
                                      }
                                    },
                                    "name": "geometry"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 18263,
                                  "end": 18281,
                                  "loc": {
                                    "start": {
                                      "line": 416,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 416,
                                      "column": 51
                                    }
                                  },
                                  "name": "verticesNeedUpdate"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 18284,
                                "end": 18288,
                                "loc": {
                                  "start": {
                                    "line": 416,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 416,
                                    "column": 58
                                  }
                                },
                                "value": true,
                                "rawValue": true,
                                "raw": "true"
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 18315,
              "end": 18480,
              "loc": {
                "start": {
                  "line": 420,
                  "column": 4
                },
                "end": {
                  "line": 423,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 18315,
                "end": 18327,
                "loc": {
                  "start": {
                    "line": 420,
                    "column": 4
                  },
                  "end": {
                    "line": 420,
                    "column": 16
                  }
                },
                "name": "calcGridStep"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 18327,
                "end": 18480,
                "loc": {
                  "start": {
                    "line": 420,
                    "column": 16
                  },
                  "end": {
                    "line": 423,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 18328,
                    "end": 18337,
                    "loc": {
                      "start": {
                        "line": 420,
                        "column": 17
                      },
                      "end": {
                        "line": 420,
                        "column": 26
                      }
                    },
                    "name": "modelSize"
                  },
                  {
                    "type": "Identifier",
                    "start": 18339,
                    "end": 18346,
                    "loc": {
                      "start": {
                        "line": 420,
                        "column": 28
                      },
                      "end": {
                        "line": 420,
                        "column": 35
                      }
                    },
                    "name": "oldstep"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 18348,
                  "end": 18480,
                  "loc": {
                    "start": {
                      "line": 420,
                      "column": 37
                    },
                    "end": {
                      "line": 423,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 18359,
                      "end": 18436,
                      "loc": {
                        "start": {
                          "line": 421,
                          "column": 8
                        },
                        "end": {
                          "line": 421,
                          "column": 85
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 18363,
                          "end": 18435,
                          "loc": {
                            "start": {
                              "line": 421,
                              "column": 12
                            },
                            "end": {
                              "line": 421,
                              "column": 84
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 18363,
                            "end": 18368,
                            "loc": {
                              "start": {
                                "line": 421,
                                "column": 12
                              },
                              "end": {
                                "line": 421,
                                "column": 17
                              }
                            },
                            "name": "power"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 18371,
                            "end": 18435,
                            "loc": {
                              "start": {
                                "line": 421,
                                "column": 20
                              },
                              "end": {
                                "line": 421,
                                "column": 84
                              }
                            },
                            "left": {
                              "type": "CallExpression",
                              "start": 18371,
                              "end": 18431,
                              "loc": {
                                "start": {
                                  "line": 421,
                                  "column": 20
                                },
                                "end": {
                                  "line": 421,
                                  "column": 80
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 18371,
                                "end": 18381,
                                "loc": {
                                  "start": {
                                    "line": 421,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 421,
                                    "column": 30
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 18371,
                                  "end": 18375,
                                  "loc": {
                                    "start": {
                                      "line": 421,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 421,
                                      "column": 24
                                    }
                                  },
                                  "name": "Math"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 18376,
                                  "end": 18381,
                                  "loc": {
                                    "start": {
                                      "line": 421,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 421,
                                      "column": 30
                                    }
                                  },
                                  "name": "floor"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "CallExpression",
                                  "start": 18382,
                                  "end": 18430,
                                  "loc": {
                                    "start": {
                                      "line": 421,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 421,
                                      "column": 79
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 18382,
                                    "end": 18392,
                                    "loc": {
                                      "start": {
                                        "line": 421,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 421,
                                        "column": 41
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 18382,
                                      "end": 18386,
                                      "loc": {
                                        "start": {
                                          "line": 421,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 421,
                                          "column": 35
                                        }
                                      },
                                      "name": "Math"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18387,
                                      "end": 18392,
                                      "loc": {
                                        "start": {
                                          "line": 421,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 421,
                                          "column": 41
                                        }
                                      },
                                      "name": "log10"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "CallExpression",
                                      "start": 18393,
                                      "end": 18429,
                                      "loc": {
                                        "start": {
                                          "line": 421,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 421,
                                          "column": 78
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 18393,
                                        "end": 18401,
                                        "loc": {
                                          "start": {
                                            "line": 421,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 421,
                                            "column": 50
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 18393,
                                          "end": 18397,
                                          "loc": {
                                            "start": {
                                              "line": 421,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 421,
                                              "column": 46
                                            }
                                          },
                                          "name": "Math"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 18398,
                                          "end": 18401,
                                          "loc": {
                                            "start": {
                                              "line": 421,
                                              "column": 47
                                            },
                                            "end": {
                                              "line": 421,
                                              "column": 50
                                            }
                                          },
                                          "name": "abs"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "BinaryExpression",
                                          "start": 18402,
                                          "end": 18428,
                                          "loc": {
                                            "start": {
                                              "line": 421,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 421,
                                              "column": 77
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 18402,
                                            "end": 18411,
                                            "loc": {
                                              "start": {
                                                "line": 421,
                                                "column": 51
                                              },
                                              "end": {
                                                "line": 421,
                                                "column": 60
                                              }
                                            },
                                            "name": "modelSize"
                                          },
                                          "operator": "*",
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 18414,
                                            "end": 18428,
                                            "loc": {
                                              "start": {
                                                "line": 421,
                                                "column": 63
                                              },
                                              "end": {
                                                "line": 421,
                                                "column": 77
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 18414,
                                              "end": 18418,
                                              "loc": {
                                                "start": {
                                                  "line": 421,
                                                  "column": 63
                                                },
                                                "end": {
                                                  "line": 421,
                                                  "column": 67
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 18419,
                                              "end": 18428,
                                              "loc": {
                                                "start": {
                                                  "line": 421,
                                                  "column": 68
                                                },
                                                "end": {
                                                  "line": 421,
                                                  "column": 77
                                                }
                                              },
                                              "name": "gridScale"
                                            },
                                            "computed": false
                                          }
                                        }
                                      ]
                                    }
                                  ]
                                }
                              ]
                            },
                            "operator": "-",
                            "right": {
                              "type": "Literal",
                              "start": 18434,
                              "end": 18435,
                              "loc": {
                                "start": {
                                  "line": 421,
                                  "column": 83
                                },
                                "end": {
                                  "line": 421,
                                  "column": 84
                                }
                              },
                              "value": 1,
                              "rawValue": 1,
                              "raw": "1"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 18446,
                      "end": 18473,
                      "loc": {
                        "start": {
                          "line": 422,
                          "column": 8
                        },
                        "end": {
                          "line": 422,
                          "column": 35
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 18453,
                        "end": 18472,
                        "loc": {
                          "start": {
                            "line": 422,
                            "column": 15
                          },
                          "end": {
                            "line": 422,
                            "column": 34
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 18453,
                          "end": 18461,
                          "loc": {
                            "start": {
                              "line": 422,
                              "column": 15
                            },
                            "end": {
                              "line": 422,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 18453,
                            "end": 18457,
                            "loc": {
                              "start": {
                                "line": 422,
                                "column": 15
                              },
                              "end": {
                                "line": 422,
                                "column": 19
                              }
                            },
                            "name": "Math"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 18458,
                            "end": 18461,
                            "loc": {
                              "start": {
                                "line": 422,
                                "column": 20
                              },
                              "end": {
                                "line": 422,
                                "column": 23
                              }
                            },
                            "name": "pow"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 18462,
                            "end": 18464,
                            "loc": {
                              "start": {
                                "line": 422,
                                "column": 24
                              },
                              "end": {
                                "line": 422,
                                "column": 26
                              }
                            },
                            "value": 10,
                            "rawValue": 10,
                            "raw": "10"
                          },
                          {
                            "type": "Identifier",
                            "start": 18466,
                            "end": 18471,
                            "loc": {
                              "start": {
                                "line": 422,
                                "column": 28
                              },
                              "end": {
                                "line": 422,
                                "column": 33
                              }
                            },
                            "name": "power"
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 18488,
              "end": 18719,
              "loc": {
                "start": {
                  "line": 425,
                  "column": 4
                },
                "end": {
                  "line": 430,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 18488,
                "end": 18500,
                "loc": {
                  "start": {
                    "line": 425,
                    "column": 4
                  },
                  "end": {
                    "line": 425,
                    "column": 16
                  }
                },
                "name": "calcAxisSize"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 18500,
                "end": 18719,
                "loc": {
                  "start": {
                    "line": 425,
                    "column": 16
                  },
                  "end": {
                    "line": 430,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 18501,
                    "end": 18505,
                    "loc": {
                      "start": {
                        "line": 425,
                        "column": 17
                      },
                      "end": {
                        "line": 425,
                        "column": 21
                      }
                    },
                    "name": "size"
                  },
                  {
                    "type": "Identifier",
                    "start": 18507,
                    "end": 18511,
                    "loc": {
                      "start": {
                        "line": 425,
                        "column": 23
                      },
                      "end": {
                        "line": 425,
                        "column": 27
                      }
                    },
                    "name": "step"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 18513,
                  "end": 18719,
                  "loc": {
                    "start": {
                      "line": 425,
                      "column": 29
                    },
                    "end": {
                      "line": 430,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 18524,
                      "end": 18561,
                      "loc": {
                        "start": {
                          "line": 426,
                          "column": 8
                        },
                        "end": {
                          "line": 426,
                          "column": 45
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 18528,
                        "end": 18538,
                        "loc": {
                          "start": {
                            "line": 426,
                            "column": 12
                          },
                          "end": {
                            "line": 426,
                            "column": 22
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 18528,
                          "end": 18532,
                          "loc": {
                            "start": {
                              "line": 426,
                              "column": 12
                            },
                            "end": {
                              "line": 426,
                              "column": 16
                            }
                          },
                          "name": "size"
                        },
                        "operator": "<=",
                        "right": {
                          "type": "Literal",
                          "start": 18536,
                          "end": 18538,
                          "loc": {
                            "start": {
                              "line": 426,
                              "column": 20
                            },
                            "end": {
                              "line": 426,
                              "column": 22
                            }
                          },
                          "value": 10,
                          "rawValue": 10,
                          "raw": "10"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 18540,
                        "end": 18561,
                        "loc": {
                          "start": {
                            "line": 426,
                            "column": 24
                          },
                          "end": {
                            "line": 426,
                            "column": 45
                          }
                        },
                        "argument": {
                          "type": "MemberExpression",
                          "start": 18547,
                          "end": 18560,
                          "loc": {
                            "start": {
                              "line": 426,
                              "column": 31
                            },
                            "end": {
                              "line": 426,
                              "column": 44
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 18547,
                            "end": 18551,
                            "loc": {
                              "start": {
                                "line": 426,
                                "column": 31
                              },
                              "end": {
                                "line": 426,
                                "column": 35
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 18552,
                            "end": 18560,
                            "loc": {
                              "start": {
                                "line": 426,
                                "column": 36
                              },
                              "end": {
                                "line": 426,
                                "column": 44
                              }
                            },
                            "name": "axisSize"
                          },
                          "computed": false
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 18571,
                      "end": 18626,
                      "loc": {
                        "start": {
                          "line": 427,
                          "column": 8
                        },
                        "end": {
                          "line": 427,
                          "column": 63
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 18575,
                          "end": 18625,
                          "loc": {
                            "start": {
                              "line": 427,
                              "column": 12
                            },
                            "end": {
                              "line": 427,
                              "column": 62
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 18575,
                            "end": 18587,
                            "loc": {
                              "start": {
                                "line": 427,
                                "column": 12
                              },
                              "end": {
                                "line": 427,
                                "column": 24
                              }
                            },
                            "name": "axisCellSize"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 18591,
                            "end": 18625,
                            "loc": {
                              "start": {
                                "line": 427,
                                "column": 28
                              },
                              "end": {
                                "line": 427,
                                "column": 62
                              }
                            },
                            "left": {
                              "type": "Literal",
                              "start": 18591,
                              "end": 18592,
                              "loc": {
                                "start": {
                                  "line": 427,
                                  "column": 28
                                },
                                "end": {
                                  "line": 427,
                                  "column": 29
                                }
                              },
                              "value": 5,
                              "rawValue": 5,
                              "raw": "5"
                            },
                            "operator": "*",
                            "right": {
                              "type": "CallExpression",
                              "start": 18595,
                              "end": 18625,
                              "loc": {
                                "start": {
                                  "line": 427,
                                  "column": 32
                                },
                                "end": {
                                  "line": 427,
                                  "column": 62
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 18595,
                                "end": 18605,
                                "loc": {
                                  "start": {
                                    "line": 427,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 427,
                                    "column": 42
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 18595,
                                  "end": 18599,
                                  "loc": {
                                    "start": {
                                      "line": 427,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 427,
                                      "column": 36
                                    }
                                  },
                                  "name": "Math"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 18600,
                                  "end": 18605,
                                  "loc": {
                                    "start": {
                                      "line": 427,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 427,
                                      "column": 42
                                    }
                                  },
                                  "name": "floor"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 18606,
                                  "end": 18624,
                                  "loc": {
                                    "start": {
                                      "line": 427,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 427,
                                      "column": 61
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 18606,
                                    "end": 18610,
                                    "loc": {
                                      "start": {
                                        "line": 427,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 427,
                                        "column": 47
                                      }
                                    },
                                    "name": "size"
                                  },
                                  "operator": "/",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 18614,
                                    "end": 18623,
                                    "loc": {
                                      "start": {
                                        "line": 427,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 427,
                                        "column": 60
                                      }
                                    },
                                    "left": {
                                      "type": "Literal",
                                      "start": 18614,
                                      "end": 18616,
                                      "loc": {
                                        "start": {
                                          "line": 427,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 427,
                                          "column": 53
                                        }
                                      },
                                      "value": 20,
                                      "rawValue": 20,
                                      "raw": "20"
                                    },
                                    "operator": "*",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 18619,
                                      "end": 18623,
                                      "loc": {
                                        "start": {
                                          "line": 427,
                                          "column": 56
                                        },
                                        "end": {
                                          "line": 427,
                                          "column": 60
                                        }
                                      },
                                      "name": "step"
                                    },
                                    "parenthesizedExpression": true
                                  }
                                }
                              ]
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 18636,
                      "end": 18675,
                      "loc": {
                        "start": {
                          "line": 428,
                          "column": 8
                        },
                        "end": {
                          "line": 428,
                          "column": 47
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 18640,
                        "end": 18656,
                        "loc": {
                          "start": {
                            "line": 428,
                            "column": 12
                          },
                          "end": {
                            "line": 428,
                            "column": 28
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 18640,
                          "end": 18652,
                          "loc": {
                            "start": {
                              "line": 428,
                              "column": 12
                            },
                            "end": {
                              "line": 428,
                              "column": 24
                            }
                          },
                          "name": "axisCellSize"
                        },
                        "operator": "<",
                        "right": {
                          "type": "Literal",
                          "start": 18655,
                          "end": 18656,
                          "loc": {
                            "start": {
                              "line": 428,
                              "column": 27
                            },
                            "end": {
                              "line": 428,
                              "column": 28
                            }
                          },
                          "value": 5,
                          "rawValue": 5,
                          "raw": "5"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 18658,
                        "end": 18675,
                        "loc": {
                          "start": {
                            "line": 428,
                            "column": 30
                          },
                          "end": {
                            "line": 428,
                            "column": 47
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 18658,
                          "end": 18674,
                          "loc": {
                            "start": {
                              "line": 428,
                              "column": 30
                            },
                            "end": {
                              "line": 428,
                              "column": 46
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 18658,
                            "end": 18670,
                            "loc": {
                              "start": {
                                "line": 428,
                                "column": 30
                              },
                              "end": {
                                "line": 428,
                                "column": 42
                              }
                            },
                            "name": "axisCellSize"
                          },
                          "right": {
                            "type": "Literal",
                            "start": 18673,
                            "end": 18674,
                            "loc": {
                              "start": {
                                "line": 428,
                                "column": 45
                              },
                              "end": {
                                "line": 428,
                                "column": 46
                              }
                            },
                            "value": 5,
                            "rawValue": 5,
                            "raw": "5"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 18685,
                      "end": 18712,
                      "loc": {
                        "start": {
                          "line": 429,
                          "column": 8
                        },
                        "end": {
                          "line": 429,
                          "column": 35
                        }
                      },
                      "argument": {
                        "type": "BinaryExpression",
                        "start": 18692,
                        "end": 18711,
                        "loc": {
                          "start": {
                            "line": 429,
                            "column": 15
                          },
                          "end": {
                            "line": 429,
                            "column": 34
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 18692,
                          "end": 18704,
                          "loc": {
                            "start": {
                              "line": 429,
                              "column": 15
                            },
                            "end": {
                              "line": 429,
                              "column": 27
                            }
                          },
                          "name": "axisCellSize"
                        },
                        "operator": "*",
                        "right": {
                          "type": "Identifier",
                          "start": 18707,
                          "end": 18711,
                          "loc": {
                            "start": {
                              "line": 429,
                              "column": 30
                            },
                            "end": {
                              "line": 429,
                              "column": 34
                            }
                          },
                          "name": "step"
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 18727,
              "end": 19816,
              "loc": {
                "start": {
                  "line": 432,
                  "column": 4
                },
                "end": {
                  "line": 460,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 18727,
                "end": 18746,
                "loc": {
                  "start": {
                    "line": 432,
                    "column": 4
                  },
                  "end": {
                    "line": 432,
                    "column": 23
                  }
                },
                "name": "getClosestGeomPoint"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 18746,
                "end": 19816,
                "loc": {
                  "start": {
                    "line": 432,
                    "column": 23
                  },
                  "end": {
                    "line": 460,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 18747,
                    "end": 18755,
                    "loc": {
                      "start": {
                        "line": 432,
                        "column": 24
                      },
                      "end": {
                        "line": 432,
                        "column": 32
                      }
                    },
                    "name": "newPoint"
                  },
                  {
                    "type": "Identifier",
                    "start": 18757,
                    "end": 18768,
                    "loc": {
                      "start": {
                        "line": 432,
                        "column": 34
                      },
                      "end": {
                        "line": 432,
                        "column": 45
                      }
                    },
                    "name": "maxDistance"
                  },
                  {
                    "type": "Identifier",
                    "start": 18770,
                    "end": 18782,
                    "loc": {
                      "start": {
                        "line": 432,
                        "column": 47
                      },
                      "end": {
                        "line": 432,
                        "column": 59
                      }
                    },
                    "name": "ignoreFilter"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 18784,
                  "end": 19816,
                  "loc": {
                    "start": {
                      "line": 432,
                      "column": 61
                    },
                    "end": {
                      "line": 460,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 18795,
                      "end": 18874,
                      "loc": {
                        "start": {
                          "line": 433,
                          "column": 8
                        },
                        "end": {
                          "line": 434,
                          "column": 59
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 18799,
                        "end": 18812,
                        "loc": {
                          "start": {
                            "line": 433,
                            "column": 12
                          },
                          "end": {
                            "line": 433,
                            "column": 25
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 18800,
                          "end": 18812,
                          "loc": {
                            "start": {
                              "line": 433,
                              "column": 13
                            },
                            "end": {
                              "line": 433,
                              "column": 25
                            }
                          },
                          "name": "ignoreFilter"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 18827,
                        "end": 18874,
                        "loc": {
                          "start": {
                            "line": 434,
                            "column": 12
                          },
                          "end": {
                            "line": 434,
                            "column": 59
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 18827,
                          "end": 18873,
                          "loc": {
                            "start": {
                              "line": 434,
                              "column": 12
                            },
                            "end": {
                              "line": 434,
                              "column": 58
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 18827,
                            "end": 18839,
                            "loc": {
                              "start": {
                                "line": 434,
                                "column": 12
                              },
                              "end": {
                                "line": 434,
                                "column": 24
                              }
                            },
                            "name": "ignoreFilter"
                          },
                          "right": {
                            "type": "FunctionExpression",
                            "start": 18842,
                            "end": 18873,
                            "loc": {
                              "start": {
                                "line": 434,
                                "column": 27
                              },
                              "end": {
                                "line": 434,
                                "column": 58
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 18851,
                                "end": 18854,
                                "loc": {
                                  "start": {
                                    "line": 434,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 434,
                                    "column": 39
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 18856,
                              "end": 18873,
                              "loc": {
                                "start": {
                                  "line": 434,
                                  "column": 41
                                },
                                "end": {
                                  "line": 434,
                                  "column": 58
                                }
                              },
                              "body": [
                                {
                                  "type": "ReturnStatement",
                                  "start": 18858,
                                  "end": 18871,
                                  "loc": {
                                    "start": {
                                      "line": 434,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 434,
                                      "column": 56
                                    }
                                  },
                                  "argument": {
                                    "type": "Literal",
                                    "start": 18865,
                                    "end": 18870,
                                    "loc": {
                                      "start": {
                                        "line": 434,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 434,
                                        "column": 55
                                      }
                                    },
                                    "value": false,
                                    "rawValue": false,
                                    "raw": "false"
                                  }
                                }
                              ]
                            }
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 18886,
                      "end": 18913,
                      "loc": {
                        "start": {
                          "line": 436,
                          "column": 8
                        },
                        "end": {
                          "line": 436,
                          "column": 35
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 18890,
                          "end": 18912,
                          "loc": {
                            "start": {
                              "line": 436,
                              "column": 12
                            },
                            "end": {
                              "line": 436,
                              "column": 34
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 18890,
                            "end": 18898,
                            "loc": {
                              "start": {
                                "line": 436,
                                "column": 12
                              },
                              "end": {
                                "line": 436,
                                "column": 20
                              }
                            },
                            "name": "distance"
                          },
                          "init": {
                            "type": "Identifier",
                            "start": 18901,
                            "end": 18912,
                            "loc": {
                              "start": {
                                "line": 436,
                                "column": 23
                              },
                              "end": {
                                "line": 436,
                                "column": 34
                              }
                            },
                            "name": "maxDistance"
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 18923,
                      "end": 18959,
                      "loc": {
                        "start": {
                          "line": 437,
                          "column": 8
                        },
                        "end": {
                          "line": 437,
                          "column": 44
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 18927,
                          "end": 18958,
                          "loc": {
                            "start": {
                              "line": 437,
                              "column": 12
                            },
                            "end": {
                              "line": 437,
                              "column": 43
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 18927,
                            "end": 18939,
                            "loc": {
                              "start": {
                                "line": 437,
                                "column": 12
                              },
                              "end": {
                                "line": 437,
                                "column": 24
                              }
                            },
                            "name": "closestPoint"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 18942,
                            "end": 18958,
                            "loc": {
                              "start": {
                                "line": 437,
                                "column": 27
                              },
                              "end": {
                                "line": 437,
                                "column": 43
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 18942,
                              "end": 18956,
                              "loc": {
                                "start": {
                                  "line": 437,
                                  "column": 27
                                },
                                "end": {
                                  "line": 437,
                                  "column": 41
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 18942,
                                "end": 18950,
                                "loc": {
                                  "start": {
                                    "line": 437,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 437,
                                    "column": 35
                                  }
                                },
                                "name": "newPoint"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 18951,
                                "end": 18956,
                                "loc": {
                                  "start": {
                                    "line": 437,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 437,
                                    "column": 41
                                  }
                                },
                                "name": "clone"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 18969,
                      "end": 18991,
                      "loc": {
                        "start": {
                          "line": 438,
                          "column": 8
                        },
                        "end": {
                          "line": 438,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 18973,
                          "end": 18990,
                          "loc": {
                            "start": {
                              "line": 438,
                              "column": 12
                            },
                            "end": {
                              "line": 438,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 18973,
                            "end": 18982,
                            "loc": {
                              "start": {
                                "line": 438,
                                "column": 12
                              },
                              "end": {
                                "line": 438,
                                "column": 21
                              }
                            },
                            "name": "isSnapped"
                          },
                          "init": {
                            "type": "Literal",
                            "start": 18985,
                            "end": 18990,
                            "loc": {
                              "start": {
                                "line": 438,
                                "column": 24
                              },
                              "end": {
                                "line": 438,
                                "column": 29
                              }
                            },
                            "value": false,
                            "rawValue": false,
                            "raw": "false"
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 19001,
                      "end": 19635,
                      "loc": {
                        "start": {
                          "line": 439,
                          "column": 8
                        },
                        "end": {
                          "line": 453,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 19001,
                        "end": 19634,
                        "loc": {
                          "start": {
                            "line": 439,
                            "column": 8
                          },
                          "end": {
                            "line": 453,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 19001,
                          "end": 19034,
                          "loc": {
                            "start": {
                              "line": 439,
                              "column": 8
                            },
                            "end": {
                              "line": 439,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 19001,
                            "end": 19026,
                            "loc": {
                              "start": {
                                "line": 439,
                                "column": 8
                              },
                              "end": {
                                "line": 439,
                                "column": 33
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 19001,
                              "end": 19024,
                              "loc": {
                                "start": {
                                  "line": 439,
                                  "column": 8
                                },
                                "end": {
                                  "line": 439,
                                  "column": 31
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 19001,
                                "end": 19005,
                                "loc": {
                                  "start": {
                                    "line": 439,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 439,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19006,
                                "end": 19024,
                                "loc": {
                                  "start": {
                                    "line": 439,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 439,
                                    "column": 31
                                  }
                                },
                                "name": "getObjectsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": []
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 19027,
                            "end": 19034,
                            "loc": {
                              "start": {
                                "line": 439,
                                "column": 34
                              },
                              "end": {
                                "line": 439,
                                "column": 41
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 19035,
                            "end": 19633,
                            "loc": {
                              "start": {
                                "line": 439,
                                "column": 42
                              },
                              "end": {
                                "line": 453,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 19035,
                                "end": 19038,
                                "loc": {
                                  "start": {
                                    "line": 439,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 439,
                                    "column": 45
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 19043,
                              "end": 19633,
                              "loc": {
                                "start": {
                                  "line": 439,
                                  "column": 50
                                },
                                "end": {
                                  "line": 453,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 19058,
                                  "end": 19622,
                                  "loc": {
                                    "start": {
                                      "line": 440,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 452,
                                      "column": 15
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 19058,
                                    "end": 19621,
                                    "loc": {
                                      "start": {
                                        "line": 440,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 452,
                                        "column": 14
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 19058,
                                      "end": 19087,
                                      "loc": {
                                        "start": {
                                          "line": 440,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 440,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 19058,
                                        "end": 19064,
                                        "loc": {
                                          "start": {
                                            "line": 440,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 440,
                                            "column": 18
                                          }
                                        },
                                        "name": "Sketch"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19065,
                                        "end": 19087,
                                        "loc": {
                                          "start": {
                                            "line": 440,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 440,
                                            "column": 41
                                          }
                                        },
                                        "name": "ForObjectsWithChildren"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 19088,
                                        "end": 19091,
                                        "loc": {
                                          "start": {
                                            "line": 440,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 440,
                                            "column": 45
                                          }
                                        },
                                        "name": "obj"
                                      },
                                      {
                                        "type": "FunctionExpression",
                                        "start": 19093,
                                        "end": 19620,
                                        "loc": {
                                          "start": {
                                            "line": 440,
                                            "column": 47
                                          },
                                          "end": {
                                            "line": 452,
                                            "column": 13
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": false,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 19102,
                                            "end": 19107,
                                            "loc": {
                                              "start": {
                                                "line": 440,
                                                "column": 56
                                              },
                                              "end": {
                                                "line": 440,
                                                "column": 61
                                              }
                                            },
                                            "name": "child"
                                          }
                                        ],
                                        "body": {
                                          "type": "BlockStatement",
                                          "start": 19109,
                                          "end": 19620,
                                          "loc": {
                                            "start": {
                                              "line": 440,
                                              "column": 63
                                            },
                                            "end": {
                                              "line": 452,
                                              "column": 13
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "IfStatement",
                                              "start": 19128,
                                              "end": 19181,
                                              "loc": {
                                                "start": {
                                                  "line": 441,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 442,
                                                  "column": 27
                                                }
                                              },
                                              "test": {
                                                "type": "CallExpression",
                                                "start": 19132,
                                                "end": 19151,
                                                "loc": {
                                                  "start": {
                                                    "line": 441,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 441,
                                                    "column": 39
                                                  }
                                                },
                                                "callee": {
                                                  "type": "Identifier",
                                                  "start": 19132,
                                                  "end": 19144,
                                                  "loc": {
                                                    "start": {
                                                      "line": 441,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 441,
                                                      "column": 32
                                                    }
                                                  },
                                                  "name": "ignoreFilter"
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 19145,
                                                    "end": 19150,
                                                    "loc": {
                                                      "start": {
                                                        "line": 441,
                                                        "column": 33
                                                      },
                                                      "end": {
                                                        "line": 441,
                                                        "column": 38
                                                      }
                                                    },
                                                    "name": "child"
                                                  }
                                                ]
                                              },
                                              "consequent": {
                                                "type": "ReturnStatement",
                                                "start": 19174,
                                                "end": 19181,
                                                "loc": {
                                                  "start": {
                                                    "line": 442,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 442,
                                                    "column": 27
                                                  }
                                                },
                                                "argument": null
                                              },
                                              "alternate": null
                                            },
                                            {
                                              "type": "IfStatement",
                                              "start": 19199,
                                              "end": 19605,
                                              "loc": {
                                                "start": {
                                                  "line": 443,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 451,
                                                  "column": 17
                                                }
                                              },
                                              "test": {
                                                "type": "BinaryExpression",
                                                "start": 19203,
                                                "end": 19225,
                                                "loc": {
                                                  "start": {
                                                    "line": 443,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 443,
                                                    "column": 42
                                                  }
                                                },
                                                "left": {
                                                  "type": "Identifier",
                                                  "start": 19203,
                                                  "end": 19208,
                                                  "loc": {
                                                    "start": {
                                                      "line": 443,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 443,
                                                      "column": 25
                                                    }
                                                  },
                                                  "name": "child"
                                                },
                                                "operator": "instanceof",
                                                "right": {
                                                  "type": "Identifier",
                                                  "start": 19220,
                                                  "end": 19225,
                                                  "loc": {
                                                    "start": {
                                                      "line": 443,
                                                      "column": 37
                                                    },
                                                    "end": {
                                                      "line": 443,
                                                      "column": 42
                                                    }
                                                  },
                                                  "name": "Point"
                                                }
                                              },
                                              "consequent": {
                                                "type": "BlockStatement",
                                                "start": 19227,
                                                "end": 19605,
                                                "loc": {
                                                  "start": {
                                                    "line": 443,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 451,
                                                    "column": 17
                                                  }
                                                },
                                                "body": [
                                                  {
                                                    "type": "VariableDeclaration",
                                                    "start": 19250,
                                                    "end": 19268,
                                                    "loc": {
                                                      "start": {
                                                        "line": 444,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 444,
                                                        "column": 38
                                                      }
                                                    },
                                                    "declarations": [
                                                      {
                                                        "type": "VariableDeclarator",
                                                        "start": 19254,
                                                        "end": 19267,
                                                        "loc": {
                                                          "start": {
                                                            "line": 444,
                                                            "column": 24
                                                          },
                                                          "end": {
                                                            "line": 444,
                                                            "column": 37
                                                          }
                                                        },
                                                        "id": {
                                                          "type": "Identifier",
                                                          "start": 19254,
                                                          "end": 19259,
                                                          "loc": {
                                                            "start": {
                                                              "line": 444,
                                                              "column": 24
                                                            },
                                                            "end": {
                                                              "line": 444,
                                                              "column": 29
                                                            }
                                                          },
                                                          "name": "point"
                                                        },
                                                        "init": {
                                                          "type": "Identifier",
                                                          "start": 19262,
                                                          "end": 19267,
                                                          "loc": {
                                                            "start": {
                                                              "line": 444,
                                                              "column": 32
                                                            },
                                                            "end": {
                                                              "line": 444,
                                                              "column": 37
                                                            }
                                                          },
                                                          "name": "child"
                                                        }
                                                      }
                                                    ],
                                                    "kind": "var"
                                                  },
                                                  {
                                                    "type": "VariableDeclaration",
                                                    "start": 19290,
                                                    "end": 19348,
                                                    "loc": {
                                                      "start": {
                                                        "line": 445,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 445,
                                                        "column": 78
                                                      }
                                                    },
                                                    "declarations": [
                                                      {
                                                        "type": "VariableDeclarator",
                                                        "start": 19294,
                                                        "end": 19347,
                                                        "loc": {
                                                          "start": {
                                                            "line": 445,
                                                            "column": 24
                                                          },
                                                          "end": {
                                                            "line": 445,
                                                            "column": 77
                                                          }
                                                        },
                                                        "id": {
                                                          "type": "Identifier",
                                                          "start": 19294,
                                                          "end": 19309,
                                                          "loc": {
                                                            "start": {
                                                              "line": 445,
                                                              "column": 24
                                                            },
                                                            "end": {
                                                              "line": 445,
                                                              "column": 39
                                                            }
                                                          },
                                                          "name": "currentDistance"
                                                        },
                                                        "init": {
                                                          "type": "CallExpression",
                                                          "start": 19312,
                                                          "end": 19347,
                                                          "loc": {
                                                            "start": {
                                                              "line": 445,
                                                              "column": 42
                                                            },
                                                            "end": {
                                                              "line": 445,
                                                              "column": 77
                                                            }
                                                          },
                                                          "callee": {
                                                            "type": "MemberExpression",
                                                            "start": 19312,
                                                            "end": 19337,
                                                            "loc": {
                                                              "start": {
                                                                "line": 445,
                                                                "column": 42
                                                              },
                                                              "end": {
                                                                "line": 445,
                                                                "column": 67
                                                              }
                                                            },
                                                            "object": {
                                                              "type": "MemberExpression",
                                                              "start": 19312,
                                                              "end": 19326,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 445,
                                                                  "column": 42
                                                                },
                                                                "end": {
                                                                  "line": 445,
                                                                  "column": 56
                                                                }
                                                              },
                                                              "object": {
                                                                "type": "Identifier",
                                                                "start": 19312,
                                                                "end": 19317,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 445,
                                                                    "column": 42
                                                                  },
                                                                  "end": {
                                                                    "line": 445,
                                                                    "column": 47
                                                                  }
                                                                },
                                                                "name": "point"
                                                              },
                                                              "property": {
                                                                "type": "Identifier",
                                                                "start": 19318,
                                                                "end": 19326,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 445,
                                                                    "column": 48
                                                                  },
                                                                  "end": {
                                                                    "line": 445,
                                                                    "column": 56
                                                                  }
                                                                },
                                                                "name": "position"
                                                              },
                                                              "computed": false
                                                            },
                                                            "property": {
                                                              "type": "Identifier",
                                                              "start": 19327,
                                                              "end": 19337,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 445,
                                                                  "column": 57
                                                                },
                                                                "end": {
                                                                  "line": 445,
                                                                  "column": 67
                                                                }
                                                              },
                                                              "name": "distanceTo"
                                                            },
                                                            "computed": false
                                                          },
                                                          "arguments": [
                                                            {
                                                              "type": "Identifier",
                                                              "start": 19338,
                                                              "end": 19346,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 445,
                                                                  "column": 68
                                                                },
                                                                "end": {
                                                                  "line": 445,
                                                                  "column": 76
                                                                }
                                                              },
                                                              "name": "newPoint"
                                                            }
                                                          ]
                                                        }
                                                      }
                                                    ],
                                                    "kind": "var"
                                                  },
                                                  {
                                                    "type": "IfStatement",
                                                    "start": 19370,
                                                    "end": 19586,
                                                    "loc": {
                                                      "start": {
                                                        "line": 446,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 450,
                                                        "column": 21
                                                      }
                                                    },
                                                    "test": {
                                                      "type": "BinaryExpression",
                                                      "start": 19374,
                                                      "end": 19400,
                                                      "loc": {
                                                        "start": {
                                                          "line": 446,
                                                          "column": 24
                                                        },
                                                        "end": {
                                                          "line": 446,
                                                          "column": 50
                                                        }
                                                      },
                                                      "left": {
                                                        "type": "Identifier",
                                                        "start": 19374,
                                                        "end": 19389,
                                                        "loc": {
                                                          "start": {
                                                            "line": 446,
                                                            "column": 24
                                                          },
                                                          "end": {
                                                            "line": 446,
                                                            "column": 39
                                                          }
                                                        },
                                                        "name": "currentDistance"
                                                      },
                                                      "operator": "<",
                                                      "right": {
                                                        "type": "Identifier",
                                                        "start": 19392,
                                                        "end": 19400,
                                                        "loc": {
                                                          "start": {
                                                            "line": 446,
                                                            "column": 42
                                                          },
                                                          "end": {
                                                            "line": 446,
                                                            "column": 50
                                                          }
                                                        },
                                                        "name": "distance"
                                                      }
                                                    },
                                                    "consequent": {
                                                      "type": "BlockStatement",
                                                      "start": 19402,
                                                      "end": 19586,
                                                      "loc": {
                                                        "start": {
                                                          "line": 446,
                                                          "column": 52
                                                        },
                                                        "end": {
                                                          "line": 450,
                                                          "column": 21
                                                        }
                                                      },
                                                      "body": [
                                                        {
                                                          "type": "ExpressionStatement",
                                                          "start": 19429,
                                                          "end": 19456,
                                                          "loc": {
                                                            "start": {
                                                              "line": 447,
                                                              "column": 24
                                                            },
                                                            "end": {
                                                              "line": 447,
                                                              "column": 51
                                                            }
                                                          },
                                                          "expression": {
                                                            "type": "AssignmentExpression",
                                                            "start": 19429,
                                                            "end": 19455,
                                                            "loc": {
                                                              "start": {
                                                                "line": 447,
                                                                "column": 24
                                                              },
                                                              "end": {
                                                                "line": 447,
                                                                "column": 50
                                                              }
                                                            },
                                                            "operator": "=",
                                                            "left": {
                                                              "type": "Identifier",
                                                              "start": 19429,
                                                              "end": 19437,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 447,
                                                                  "column": 24
                                                                },
                                                                "end": {
                                                                  "line": 447,
                                                                  "column": 32
                                                                }
                                                              },
                                                              "name": "distance"
                                                            },
                                                            "right": {
                                                              "type": "Identifier",
                                                              "start": 19440,
                                                              "end": 19455,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 447,
                                                                  "column": 35
                                                                },
                                                                "end": {
                                                                  "line": 447,
                                                                  "column": 50
                                                                }
                                                              },
                                                              "name": "currentDistance"
                                                            }
                                                          }
                                                        },
                                                        {
                                                          "type": "ExpressionStatement",
                                                          "start": 19482,
                                                          "end": 19520,
                                                          "loc": {
                                                            "start": {
                                                              "line": 448,
                                                              "column": 24
                                                            },
                                                            "end": {
                                                              "line": 448,
                                                              "column": 62
                                                            }
                                                          },
                                                          "expression": {
                                                            "type": "AssignmentExpression",
                                                            "start": 19482,
                                                            "end": 19519,
                                                            "loc": {
                                                              "start": {
                                                                "line": 448,
                                                                "column": 24
                                                              },
                                                              "end": {
                                                                "line": 448,
                                                                "column": 61
                                                              }
                                                            },
                                                            "operator": "=",
                                                            "left": {
                                                              "type": "Identifier",
                                                              "start": 19482,
                                                              "end": 19494,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 448,
                                                                  "column": 24
                                                                },
                                                                "end": {
                                                                  "line": 448,
                                                                  "column": 36
                                                                }
                                                              },
                                                              "name": "closestPoint"
                                                            },
                                                            "right": {
                                                              "type": "CallExpression",
                                                              "start": 19497,
                                                              "end": 19519,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 448,
                                                                  "column": 39
                                                                },
                                                                "end": {
                                                                  "line": 448,
                                                                  "column": 61
                                                                }
                                                              },
                                                              "callee": {
                                                                "type": "MemberExpression",
                                                                "start": 19497,
                                                                "end": 19517,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 448,
                                                                    "column": 39
                                                                  },
                                                                  "end": {
                                                                    "line": 448,
                                                                    "column": 59
                                                                  }
                                                                },
                                                                "object": {
                                                                  "type": "MemberExpression",
                                                                  "start": 19497,
                                                                  "end": 19511,
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 448,
                                                                      "column": 39
                                                                    },
                                                                    "end": {
                                                                      "line": 448,
                                                                      "column": 53
                                                                    }
                                                                  },
                                                                  "object": {
                                                                    "type": "Identifier",
                                                                    "start": 19497,
                                                                    "end": 19502,
                                                                    "loc": {
                                                                      "start": {
                                                                        "line": 448,
                                                                        "column": 39
                                                                      },
                                                                      "end": {
                                                                        "line": 448,
                                                                        "column": 44
                                                                      }
                                                                    },
                                                                    "name": "point"
                                                                  },
                                                                  "property": {
                                                                    "type": "Identifier",
                                                                    "start": 19503,
                                                                    "end": 19511,
                                                                    "loc": {
                                                                      "start": {
                                                                        "line": 448,
                                                                        "column": 45
                                                                      },
                                                                      "end": {
                                                                        "line": 448,
                                                                        "column": 53
                                                                      }
                                                                    },
                                                                    "name": "position"
                                                                  },
                                                                  "computed": false
                                                                },
                                                                "property": {
                                                                  "type": "Identifier",
                                                                  "start": 19512,
                                                                  "end": 19517,
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 448,
                                                                      "column": 54
                                                                    },
                                                                    "end": {
                                                                      "line": 448,
                                                                      "column": 59
                                                                    }
                                                                  },
                                                                  "name": "clone"
                                                                },
                                                                "computed": false
                                                              },
                                                              "arguments": []
                                                            }
                                                          }
                                                        },
                                                        {
                                                          "type": "ExpressionStatement",
                                                          "start": 19546,
                                                          "end": 19563,
                                                          "loc": {
                                                            "start": {
                                                              "line": 449,
                                                              "column": 24
                                                            },
                                                            "end": {
                                                              "line": 449,
                                                              "column": 41
                                                            }
                                                          },
                                                          "expression": {
                                                            "type": "AssignmentExpression",
                                                            "start": 19546,
                                                            "end": 19562,
                                                            "loc": {
                                                              "start": {
                                                                "line": 449,
                                                                "column": 24
                                                              },
                                                              "end": {
                                                                "line": 449,
                                                                "column": 40
                                                              }
                                                            },
                                                            "operator": "=",
                                                            "left": {
                                                              "type": "Identifier",
                                                              "start": 19546,
                                                              "end": 19555,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 449,
                                                                  "column": 24
                                                                },
                                                                "end": {
                                                                  "line": 449,
                                                                  "column": 33
                                                                }
                                                              },
                                                              "name": "isSnapped"
                                                            },
                                                            "right": {
                                                              "type": "Literal",
                                                              "start": 19558,
                                                              "end": 19562,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 449,
                                                                  "column": 36
                                                                },
                                                                "end": {
                                                                  "line": 449,
                                                                  "column": 40
                                                                }
                                                              },
                                                              "value": true,
                                                              "rawValue": true,
                                                              "raw": "true"
                                                            }
                                                          }
                                                        }
                                                      ]
                                                    },
                                                    "alternate": null
                                                  }
                                                ]
                                              },
                                              "alternate": null
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 19647,
                      "end": 19809,
                      "loc": {
                        "start": {
                          "line": 455,
                          "column": 8
                        },
                        "end": {
                          "line": 459,
                          "column": 10
                        }
                      },
                      "argument": {
                        "type": "ObjectExpression",
                        "start": 19654,
                        "end": 19808,
                        "loc": {
                          "start": {
                            "line": 455,
                            "column": 15
                          },
                          "end": {
                            "line": 459,
                            "column": 9
                          }
                        },
                        "properties": [
                          {
                            "type": "Property",
                            "start": 19669,
                            "end": 19698,
                            "loc": {
                              "start": {
                                "line": 456,
                                "column": 12
                              },
                              "end": {
                                "line": 456,
                                "column": 41
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 19669,
                              "end": 19684,
                              "loc": {
                                "start": {
                                  "line": 456,
                                  "column": 12
                                },
                                "end": {
                                  "line": 456,
                                  "column": 27
                                }
                              },
                              "name": "snappedPosition"
                            },
                            "value": {
                              "type": "Identifier",
                              "start": 19686,
                              "end": 19698,
                              "loc": {
                                "start": {
                                  "line": 456,
                                  "column": 29
                                },
                                "end": {
                                  "line": 456,
                                  "column": 41
                                }
                              },
                              "name": "closestPoint"
                            },
                            "kind": "init"
                          },
                          {
                            "type": "Property",
                            "start": 19713,
                            "end": 19762,
                            "loc": {
                              "start": {
                                "line": 457,
                                "column": 12
                              },
                              "end": {
                                "line": 457,
                                "column": 61
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 19713,
                              "end": 19726,
                              "loc": {
                                "start": {
                                  "line": 457,
                                  "column": 12
                                },
                                "end": {
                                  "line": 457,
                                  "column": 25
                                }
                              },
                              "name": "snappingShift"
                            },
                            "value": {
                              "type": "CallExpression",
                              "start": 19728,
                              "end": 19762,
                              "loc": {
                                "start": {
                                  "line": 457,
                                  "column": 27
                                },
                                "end": {
                                  "line": 457,
                                  "column": 61
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 19728,
                                "end": 19752,
                                "loc": {
                                  "start": {
                                    "line": 457,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 457,
                                    "column": 51
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 19728,
                                  "end": 19748,
                                  "loc": {
                                    "start": {
                                      "line": 457,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 457,
                                      "column": 47
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 19728,
                                    "end": 19746,
                                    "loc": {
                                      "start": {
                                        "line": 457,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 457,
                                        "column": 45
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 19728,
                                      "end": 19740,
                                      "loc": {
                                        "start": {
                                          "line": 457,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 457,
                                          "column": 39
                                        }
                                      },
                                      "name": "closestPoint"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 19741,
                                      "end": 19746,
                                      "loc": {
                                        "start": {
                                          "line": 457,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 457,
                                          "column": 45
                                        }
                                      },
                                      "name": "clone"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19749,
                                  "end": 19752,
                                  "loc": {
                                    "start": {
                                      "line": 457,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 457,
                                      "column": 51
                                    }
                                  },
                                  "name": "sub"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 19753,
                                  "end": 19761,
                                  "loc": {
                                    "start": {
                                      "line": 457,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 457,
                                      "column": 60
                                    }
                                  },
                                  "name": "newPoint"
                                }
                              ]
                            },
                            "kind": "init"
                          },
                          {
                            "type": "Property",
                            "start": 19777,
                            "end": 19797,
                            "loc": {
                              "start": {
                                "line": 458,
                                "column": 12
                              },
                              "end": {
                                "line": 458,
                                "column": 32
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 19777,
                              "end": 19786,
                              "loc": {
                                "start": {
                                  "line": 458,
                                  "column": 12
                                },
                                "end": {
                                  "line": 458,
                                  "column": 21
                                }
                              },
                              "name": "isSnapped"
                            },
                            "value": {
                              "type": "Identifier",
                              "start": 19788,
                              "end": 19797,
                              "loc": {
                                "start": {
                                  "line": 458,
                                  "column": 23
                                },
                                "end": {
                                  "line": 458,
                                  "column": 32
                                }
                              },
                              "name": "isSnapped"
                            },
                            "kind": "init"
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 19824,
              "end": 20650,
              "loc": {
                "start": {
                  "line": 462,
                  "column": 4
                },
                "end": {
                  "line": 481,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 19824,
                "end": 19843,
                "loc": {
                  "start": {
                    "line": 462,
                    "column": 4
                  },
                  "end": {
                    "line": 462,
                    "column": 23
                  }
                },
                "name": "getClosestGridPoint"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 19843,
                "end": 20650,
                "loc": {
                  "start": {
                    "line": 462,
                    "column": 23
                  },
                  "end": {
                    "line": 481,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 19844,
                    "end": 19852,
                    "loc": {
                      "start": {
                        "line": 462,
                        "column": 24
                      },
                      "end": {
                        "line": 462,
                        "column": 32
                      }
                    },
                    "name": "newPoint"
                  },
                  {
                    "type": "Identifier",
                    "start": 19854,
                    "end": 19865,
                    "loc": {
                      "start": {
                        "line": 462,
                        "column": 34
                      },
                      "end": {
                        "line": 462,
                        "column": 45
                      }
                    },
                    "name": "maxDistance"
                  },
                  {
                    "type": "Identifier",
                    "start": 19867,
                    "end": 19879,
                    "loc": {
                      "start": {
                        "line": 462,
                        "column": 47
                      },
                      "end": {
                        "line": 462,
                        "column": 59
                      }
                    },
                    "name": "ignoreFilter"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 19881,
                  "end": 20650,
                  "loc": {
                    "start": {
                      "line": 462,
                      "column": 61
                    },
                    "end": {
                      "line": 481,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 19892,
                      "end": 19928,
                      "loc": {
                        "start": {
                          "line": 463,
                          "column": 8
                        },
                        "end": {
                          "line": 463,
                          "column": 44
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 19896,
                          "end": 19927,
                          "loc": {
                            "start": {
                              "line": 463,
                              "column": 12
                            },
                            "end": {
                              "line": 463,
                              "column": 43
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 19896,
                            "end": 19908,
                            "loc": {
                              "start": {
                                "line": 463,
                                "column": 12
                              },
                              "end": {
                                "line": 463,
                                "column": 24
                              }
                            },
                            "name": "closestPoint"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 19911,
                            "end": 19927,
                            "loc": {
                              "start": {
                                "line": 463,
                                "column": 27
                              },
                              "end": {
                                "line": 463,
                                "column": 43
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 19911,
                              "end": 19925,
                              "loc": {
                                "start": {
                                  "line": 463,
                                  "column": 27
                                },
                                "end": {
                                  "line": 463,
                                  "column": 41
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 19911,
                                "end": 19919,
                                "loc": {
                                  "start": {
                                    "line": 463,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 463,
                                    "column": 35
                                  }
                                },
                                "name": "newPoint"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19920,
                                "end": 19925,
                                "loc": {
                                  "start": {
                                    "line": 463,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 463,
                                    "column": 41
                                  }
                                },
                                "name": "clone"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 19938,
                      "end": 19960,
                      "loc": {
                        "start": {
                          "line": 464,
                          "column": 8
                        },
                        "end": {
                          "line": 464,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 19942,
                          "end": 19959,
                          "loc": {
                            "start": {
                              "line": 464,
                              "column": 12
                            },
                            "end": {
                              "line": 464,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 19942,
                            "end": 19951,
                            "loc": {
                              "start": {
                                "line": 464,
                                "column": 12
                              },
                              "end": {
                                "line": 464,
                                "column": 21
                              }
                            },
                            "name": "isSnapped"
                          },
                          "init": {
                            "type": "Literal",
                            "start": 19954,
                            "end": 19959,
                            "loc": {
                              "start": {
                                "line": 464,
                                "column": 24
                              },
                              "end": {
                                "line": 464,
                                "column": 29
                              }
                            },
                            "value": false,
                            "rawValue": false,
                            "raw": "false"
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 19970,
                      "end": 20469,
                      "loc": {
                        "start": {
                          "line": 465,
                          "column": 8
                        },
                        "end": {
                          "line": 474,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 19974,
                        "end": 19993,
                        "loc": {
                          "start": {
                            "line": 465,
                            "column": 12
                          },
                          "end": {
                            "line": 465,
                            "column": 31
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 19974,
                          "end": 19987,
                          "loc": {
                            "start": {
                              "line": 465,
                              "column": 12
                            },
                            "end": {
                              "line": 465,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 19974,
                            "end": 19978,
                            "loc": {
                              "start": {
                                "line": 465,
                                "column": 12
                              },
                              "end": {
                                "line": 465,
                                "column": 16
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 19979,
                            "end": 19987,
                            "loc": {
                              "start": {
                                "line": 465,
                                "column": 17
                              },
                              "end": {
                                "line": 465,
                                "column": 25
                              }
                            },
                            "name": "gridStep"
                          },
                          "computed": false
                        },
                        "operator": ">",
                        "right": {
                          "type": "Literal",
                          "start": 19990,
                          "end": 19993,
                          "loc": {
                            "start": {
                              "line": 465,
                              "column": 28
                            },
                            "end": {
                              "line": 465,
                              "column": 31
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0.0"
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 19995,
                        "end": 20469,
                        "loc": {
                          "start": {
                            "line": 465,
                            "column": 33
                          },
                          "end": {
                            "line": 474,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 20010,
                            "end": 20068,
                            "loc": {
                              "start": {
                                "line": 466,
                                "column": 12
                              },
                              "end": {
                                "line": 466,
                                "column": 70
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 20014,
                                "end": 20067,
                                "loc": {
                                  "start": {
                                    "line": 466,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 466,
                                    "column": 69
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 20014,
                                  "end": 20022,
                                  "loc": {
                                    "start": {
                                      "line": 466,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 466,
                                      "column": 24
                                    }
                                  },
                                  "name": "distance"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 20025,
                                  "end": 20067,
                                  "loc": {
                                    "start": {
                                      "line": 466,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 466,
                                      "column": 69
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 20025,
                                    "end": 20033,
                                    "loc": {
                                      "start": {
                                        "line": 466,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 466,
                                        "column": 35
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 20025,
                                      "end": 20029,
                                      "loc": {
                                        "start": {
                                          "line": 466,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 466,
                                          "column": 31
                                        }
                                      },
                                      "name": "Math"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20030,
                                      "end": 20033,
                                      "loc": {
                                        "start": {
                                          "line": 466,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 466,
                                          "column": 35
                                        }
                                      },
                                      "name": "min"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 20034,
                                      "end": 20045,
                                      "loc": {
                                        "start": {
                                          "line": 466,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 466,
                                          "column": 47
                                        }
                                      },
                                      "name": "maxDistance"
                                    },
                                    {
                                      "type": "BinaryExpression",
                                      "start": 20047,
                                      "end": 20066,
                                      "loc": {
                                        "start": {
                                          "line": 466,
                                          "column": 49
                                        },
                                        "end": {
                                          "line": 466,
                                          "column": 68
                                        }
                                      },
                                      "left": {
                                        "type": "MemberExpression",
                                        "start": 20047,
                                        "end": 20060,
                                        "loc": {
                                          "start": {
                                            "line": 466,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 466,
                                            "column": 62
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 20047,
                                          "end": 20051,
                                          "loc": {
                                            "start": {
                                              "line": 466,
                                              "column": 49
                                            },
                                            "end": {
                                              "line": 466,
                                              "column": 53
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 20052,
                                          "end": 20060,
                                          "loc": {
                                            "start": {
                                              "line": 466,
                                              "column": 54
                                            },
                                            "end": {
                                              "line": 466,
                                              "column": 62
                                            }
                                          },
                                          "name": "gridStep"
                                        },
                                        "computed": false
                                      },
                                      "operator": "/",
                                      "right": {
                                        "type": "Literal",
                                        "start": 20063,
                                        "end": 20066,
                                        "loc": {
                                          "start": {
                                            "line": 466,
                                            "column": 65
                                          },
                                          "end": {
                                            "line": 466,
                                            "column": 68
                                          }
                                        },
                                        "value": 3,
                                        "rawValue": 3,
                                        "raw": "3.0"
                                      }
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 20082,
                            "end": 20145,
                            "loc": {
                              "start": {
                                "line": 467,
                                "column": 12
                              },
                              "end": {
                                "line": 467,
                                "column": 75
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 20086,
                                "end": 20144,
                                "loc": {
                                  "start": {
                                    "line": 467,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 467,
                                    "column": 74
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 20086,
                                  "end": 20087,
                                  "loc": {
                                    "start": {
                                      "line": 467,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 467,
                                      "column": 17
                                    }
                                  },
                                  "name": "x"
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 20090,
                                  "end": 20144,
                                  "loc": {
                                    "start": {
                                      "line": 467,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 467,
                                      "column": 74
                                    }
                                  },
                                  "left": {
                                    "type": "CallExpression",
                                    "start": 20090,
                                    "end": 20128,
                                    "loc": {
                                      "start": {
                                        "line": 467,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 467,
                                        "column": 58
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 20090,
                                      "end": 20100,
                                      "loc": {
                                        "start": {
                                          "line": 467,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 467,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 20090,
                                        "end": 20094,
                                        "loc": {
                                          "start": {
                                            "line": 467,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 467,
                                            "column": 24
                                          }
                                        },
                                        "name": "Math"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 20095,
                                        "end": 20100,
                                        "loc": {
                                          "start": {
                                            "line": 467,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 467,
                                            "column": 30
                                          }
                                        },
                                        "name": "round"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 20101,
                                        "end": 20127,
                                        "loc": {
                                          "start": {
                                            "line": 467,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 467,
                                            "column": 57
                                          }
                                        },
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 20101,
                                          "end": 20111,
                                          "loc": {
                                            "start": {
                                              "line": 467,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 467,
                                              "column": 41
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 20101,
                                            "end": 20109,
                                            "loc": {
                                              "start": {
                                                "line": 467,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 467,
                                                "column": 39
                                              }
                                            },
                                            "name": "newPoint"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 20110,
                                            "end": 20111,
                                            "loc": {
                                              "start": {
                                                "line": 467,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 467,
                                                "column": 41
                                              }
                                            },
                                            "name": "x"
                                          },
                                          "computed": false
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "MemberExpression",
                                          "start": 20114,
                                          "end": 20127,
                                          "loc": {
                                            "start": {
                                              "line": 467,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 467,
                                              "column": 57
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 20114,
                                            "end": 20118,
                                            "loc": {
                                              "start": {
                                                "line": 467,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 467,
                                                "column": 48
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 20119,
                                            "end": 20127,
                                            "loc": {
                                              "start": {
                                                "line": 467,
                                                "column": 49
                                              },
                                              "end": {
                                                "line": 467,
                                                "column": 57
                                              }
                                            },
                                            "name": "gridStep"
                                          },
                                          "computed": false
                                        }
                                      }
                                    ]
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 20131,
                                    "end": 20144,
                                    "loc": {
                                      "start": {
                                        "line": 467,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 467,
                                        "column": 74
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 20131,
                                      "end": 20135,
                                      "loc": {
                                        "start": {
                                          "line": 467,
                                          "column": 61
                                        },
                                        "end": {
                                          "line": 467,
                                          "column": 65
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20136,
                                      "end": 20144,
                                      "loc": {
                                        "start": {
                                          "line": 467,
                                          "column": 66
                                        },
                                        "end": {
                                          "line": 467,
                                          "column": 74
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  }
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 20159,
                            "end": 20222,
                            "loc": {
                              "start": {
                                "line": 468,
                                "column": 12
                              },
                              "end": {
                                "line": 468,
                                "column": 75
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 20163,
                                "end": 20221,
                                "loc": {
                                  "start": {
                                    "line": 468,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 468,
                                    "column": 74
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 20163,
                                  "end": 20164,
                                  "loc": {
                                    "start": {
                                      "line": 468,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 468,
                                      "column": 17
                                    }
                                  },
                                  "name": "y"
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 20167,
                                  "end": 20221,
                                  "loc": {
                                    "start": {
                                      "line": 468,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 468,
                                      "column": 74
                                    }
                                  },
                                  "left": {
                                    "type": "CallExpression",
                                    "start": 20167,
                                    "end": 20205,
                                    "loc": {
                                      "start": {
                                        "line": 468,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 468,
                                        "column": 58
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 20167,
                                      "end": 20177,
                                      "loc": {
                                        "start": {
                                          "line": 468,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 468,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 20167,
                                        "end": 20171,
                                        "loc": {
                                          "start": {
                                            "line": 468,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 468,
                                            "column": 24
                                          }
                                        },
                                        "name": "Math"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 20172,
                                        "end": 20177,
                                        "loc": {
                                          "start": {
                                            "line": 468,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 468,
                                            "column": 30
                                          }
                                        },
                                        "name": "round"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 20178,
                                        "end": 20204,
                                        "loc": {
                                          "start": {
                                            "line": 468,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 468,
                                            "column": 57
                                          }
                                        },
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 20178,
                                          "end": 20188,
                                          "loc": {
                                            "start": {
                                              "line": 468,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 468,
                                              "column": 41
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 20178,
                                            "end": 20186,
                                            "loc": {
                                              "start": {
                                                "line": 468,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 468,
                                                "column": 39
                                              }
                                            },
                                            "name": "newPoint"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 20187,
                                            "end": 20188,
                                            "loc": {
                                              "start": {
                                                "line": 468,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 468,
                                                "column": 41
                                              }
                                            },
                                            "name": "y"
                                          },
                                          "computed": false
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "MemberExpression",
                                          "start": 20191,
                                          "end": 20204,
                                          "loc": {
                                            "start": {
                                              "line": 468,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 468,
                                              "column": 57
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 20191,
                                            "end": 20195,
                                            "loc": {
                                              "start": {
                                                "line": 468,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 468,
                                                "column": 48
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 20196,
                                            "end": 20204,
                                            "loc": {
                                              "start": {
                                                "line": 468,
                                                "column": 49
                                              },
                                              "end": {
                                                "line": 468,
                                                "column": 57
                                              }
                                            },
                                            "name": "gridStep"
                                          },
                                          "computed": false
                                        }
                                      }
                                    ]
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 20208,
                                    "end": 20221,
                                    "loc": {
                                      "start": {
                                        "line": 468,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 468,
                                        "column": 74
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 20208,
                                      "end": 20212,
                                      "loc": {
                                        "start": {
                                          "line": 468,
                                          "column": 61
                                        },
                                        "end": {
                                          "line": 468,
                                          "column": 65
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20213,
                                      "end": 20221,
                                      "loc": {
                                        "start": {
                                          "line": 468,
                                          "column": 66
                                        },
                                        "end": {
                                          "line": 468,
                                          "column": 74
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  }
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "IfStatement",
                            "start": 20236,
                            "end": 20458,
                            "loc": {
                              "start": {
                                "line": 469,
                                "column": 12
                              },
                              "end": {
                                "line": 473,
                                "column": 13
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 20240,
                              "end": 20331,
                              "loc": {
                                "start": {
                                  "line": 469,
                                  "column": 16
                                },
                                "end": {
                                  "line": 469,
                                  "column": 107
                                }
                              },
                              "left": {
                                "type": "BinaryExpression",
                                "start": 20241,
                                "end": 20310,
                                "loc": {
                                  "start": {
                                    "line": 469,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 469,
                                    "column": 86
                                  }
                                },
                                "left": {
                                  "type": "BinaryExpression",
                                  "start": 20241,
                                  "end": 20274,
                                  "loc": {
                                    "start": {
                                      "line": 469,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 469,
                                      "column": 50
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 20242,
                                    "end": 20256,
                                    "loc": {
                                      "start": {
                                        "line": 469,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 469,
                                        "column": 32
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 20242,
                                      "end": 20243,
                                      "loc": {
                                        "start": {
                                          "line": 469,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 469,
                                          "column": 19
                                        }
                                      },
                                      "name": "x"
                                    },
                                    "operator": "-",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 20246,
                                      "end": 20256,
                                      "loc": {
                                        "start": {
                                          "line": 469,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 469,
                                          "column": 32
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 20246,
                                        "end": 20254,
                                        "loc": {
                                          "start": {
                                            "line": 469,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 469,
                                            "column": 30
                                          }
                                        },
                                        "name": "newPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 20255,
                                        "end": 20256,
                                        "loc": {
                                          "start": {
                                            "line": 469,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 469,
                                            "column": 32
                                          }
                                        },
                                        "name": "x"
                                      },
                                      "computed": false
                                    },
                                    "parenthesizedExpression": true
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 20259,
                                    "end": 20273,
                                    "loc": {
                                      "start": {
                                        "line": 469,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 469,
                                        "column": 49
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 20259,
                                      "end": 20260,
                                      "loc": {
                                        "start": {
                                          "line": 469,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 469,
                                          "column": 36
                                        }
                                      },
                                      "name": "x"
                                    },
                                    "operator": "-",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 20263,
                                      "end": 20273,
                                      "loc": {
                                        "start": {
                                          "line": 469,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 469,
                                          "column": 49
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 20263,
                                        "end": 20271,
                                        "loc": {
                                          "start": {
                                            "line": 469,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 469,
                                            "column": 47
                                          }
                                        },
                                        "name": "newPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 20272,
                                        "end": 20273,
                                        "loc": {
                                          "start": {
                                            "line": 469,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 469,
                                            "column": 49
                                          }
                                        },
                                        "name": "x"
                                      },
                                      "computed": false
                                    },
                                    "parenthesizedExpression": true
                                  }
                                },
                                "operator": "+",
                                "right": {
                                  "type": "BinaryExpression",
                                  "start": 20277,
                                  "end": 20310,
                                  "loc": {
                                    "start": {
                                      "line": 469,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 469,
                                      "column": 86
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 20278,
                                    "end": 20292,
                                    "loc": {
                                      "start": {
                                        "line": 469,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 469,
                                        "column": 68
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 20278,
                                      "end": 20279,
                                      "loc": {
                                        "start": {
                                          "line": 469,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 469,
                                          "column": 55
                                        }
                                      },
                                      "name": "y"
                                    },
                                    "operator": "-",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 20282,
                                      "end": 20292,
                                      "loc": {
                                        "start": {
                                          "line": 469,
                                          "column": 58
                                        },
                                        "end": {
                                          "line": 469,
                                          "column": 68
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 20282,
                                        "end": 20290,
                                        "loc": {
                                          "start": {
                                            "line": 469,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 469,
                                            "column": 66
                                          }
                                        },
                                        "name": "newPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 20291,
                                        "end": 20292,
                                        "loc": {
                                          "start": {
                                            "line": 469,
                                            "column": 67
                                          },
                                          "end": {
                                            "line": 469,
                                            "column": 68
                                          }
                                        },
                                        "name": "y"
                                      },
                                      "computed": false
                                    },
                                    "parenthesizedExpression": true
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 20295,
                                    "end": 20309,
                                    "loc": {
                                      "start": {
                                        "line": 469,
                                        "column": 71
                                      },
                                      "end": {
                                        "line": 469,
                                        "column": 85
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 20295,
                                      "end": 20296,
                                      "loc": {
                                        "start": {
                                          "line": 469,
                                          "column": 71
                                        },
                                        "end": {
                                          "line": 469,
                                          "column": 72
                                        }
                                      },
                                      "name": "y"
                                    },
                                    "operator": "-",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 20299,
                                      "end": 20309,
                                      "loc": {
                                        "start": {
                                          "line": 469,
                                          "column": 75
                                        },
                                        "end": {
                                          "line": 469,
                                          "column": 85
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 20299,
                                        "end": 20307,
                                        "loc": {
                                          "start": {
                                            "line": 469,
                                            "column": 75
                                          },
                                          "end": {
                                            "line": 469,
                                            "column": 83
                                          }
                                        },
                                        "name": "newPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 20308,
                                        "end": 20309,
                                        "loc": {
                                          "start": {
                                            "line": 469,
                                            "column": 84
                                          },
                                          "end": {
                                            "line": 469,
                                            "column": 85
                                          }
                                        },
                                        "name": "y"
                                      },
                                      "computed": false
                                    },
                                    "parenthesizedExpression": true
                                  }
                                },
                                "parenthesizedExpression": true
                              },
                              "operator": "<",
                              "right": {
                                "type": "BinaryExpression",
                                "start": 20314,
                                "end": 20331,
                                "loc": {
                                  "start": {
                                    "line": 469,
                                    "column": 90
                                  },
                                  "end": {
                                    "line": 469,
                                    "column": 107
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 20314,
                                  "end": 20322,
                                  "loc": {
                                    "start": {
                                      "line": 469,
                                      "column": 90
                                    },
                                    "end": {
                                      "line": 469,
                                      "column": 98
                                    }
                                  },
                                  "name": "distance"
                                },
                                "operator": "*",
                                "right": {
                                  "type": "Identifier",
                                  "start": 20323,
                                  "end": 20331,
                                  "loc": {
                                    "start": {
                                      "line": 469,
                                      "column": 99
                                    },
                                    "end": {
                                      "line": 469,
                                      "column": 107
                                    }
                                  },
                                  "name": "distance"
                                }
                              }
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 20333,
                              "end": 20458,
                              "loc": {
                                "start": {
                                  "line": 469,
                                  "column": 109
                                },
                                "end": {
                                  "line": 473,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 20352,
                                  "end": 20371,
                                  "loc": {
                                    "start": {
                                      "line": 470,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 470,
                                      "column": 35
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 20352,
                                    "end": 20370,
                                    "loc": {
                                      "start": {
                                        "line": 470,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 470,
                                        "column": 34
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 20352,
                                      "end": 20366,
                                      "loc": {
                                        "start": {
                                          "line": 470,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 470,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 20352,
                                        "end": 20364,
                                        "loc": {
                                          "start": {
                                            "line": 470,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 470,
                                            "column": 28
                                          }
                                        },
                                        "name": "closestPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 20365,
                                        "end": 20366,
                                        "loc": {
                                          "start": {
                                            "line": 470,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 470,
                                            "column": 30
                                          }
                                        },
                                        "name": "x"
                                      },
                                      "computed": false
                                    },
                                    "right": {
                                      "type": "Identifier",
                                      "start": 20369,
                                      "end": 20370,
                                      "loc": {
                                        "start": {
                                          "line": 470,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 470,
                                          "column": 34
                                        }
                                      },
                                      "name": "x"
                                    }
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 20389,
                                  "end": 20408,
                                  "loc": {
                                    "start": {
                                      "line": 471,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 471,
                                      "column": 35
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 20389,
                                    "end": 20407,
                                    "loc": {
                                      "start": {
                                        "line": 471,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 471,
                                        "column": 34
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 20389,
                                      "end": 20403,
                                      "loc": {
                                        "start": {
                                          "line": 471,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 471,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 20389,
                                        "end": 20401,
                                        "loc": {
                                          "start": {
                                            "line": 471,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 471,
                                            "column": 28
                                          }
                                        },
                                        "name": "closestPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 20402,
                                        "end": 20403,
                                        "loc": {
                                          "start": {
                                            "line": 471,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 471,
                                            "column": 30
                                          }
                                        },
                                        "name": "y"
                                      },
                                      "computed": false
                                    },
                                    "right": {
                                      "type": "Identifier",
                                      "start": 20406,
                                      "end": 20407,
                                      "loc": {
                                        "start": {
                                          "line": 471,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 471,
                                          "column": 34
                                        }
                                      },
                                      "name": "y"
                                    }
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 20426,
                                  "end": 20443,
                                  "loc": {
                                    "start": {
                                      "line": 472,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 472,
                                      "column": 33
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 20426,
                                    "end": 20442,
                                    "loc": {
                                      "start": {
                                        "line": 472,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 472,
                                        "column": 32
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 20426,
                                      "end": 20435,
                                      "loc": {
                                        "start": {
                                          "line": 472,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 472,
                                          "column": 25
                                        }
                                      },
                                      "name": "isSnapped"
                                    },
                                    "right": {
                                      "type": "Literal",
                                      "start": 20438,
                                      "end": 20442,
                                      "loc": {
                                        "start": {
                                          "line": 472,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 472,
                                          "column": 32
                                        }
                                      },
                                      "value": true,
                                      "rawValue": true,
                                      "raw": "true"
                                    }
                                  }
                                }
                              ]
                            },
                            "alternate": null
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 20481,
                      "end": 20643,
                      "loc": {
                        "start": {
                          "line": 476,
                          "column": 8
                        },
                        "end": {
                          "line": 480,
                          "column": 10
                        }
                      },
                      "argument": {
                        "type": "ObjectExpression",
                        "start": 20488,
                        "end": 20642,
                        "loc": {
                          "start": {
                            "line": 476,
                            "column": 15
                          },
                          "end": {
                            "line": 480,
                            "column": 9
                          }
                        },
                        "properties": [
                          {
                            "type": "Property",
                            "start": 20503,
                            "end": 20532,
                            "loc": {
                              "start": {
                                "line": 477,
                                "column": 12
                              },
                              "end": {
                                "line": 477,
                                "column": 41
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 20503,
                              "end": 20518,
                              "loc": {
                                "start": {
                                  "line": 477,
                                  "column": 12
                                },
                                "end": {
                                  "line": 477,
                                  "column": 27
                                }
                              },
                              "name": "snappedPosition"
                            },
                            "value": {
                              "type": "Identifier",
                              "start": 20520,
                              "end": 20532,
                              "loc": {
                                "start": {
                                  "line": 477,
                                  "column": 29
                                },
                                "end": {
                                  "line": 477,
                                  "column": 41
                                }
                              },
                              "name": "closestPoint"
                            },
                            "kind": "init"
                          },
                          {
                            "type": "Property",
                            "start": 20547,
                            "end": 20596,
                            "loc": {
                              "start": {
                                "line": 478,
                                "column": 12
                              },
                              "end": {
                                "line": 478,
                                "column": 61
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 20547,
                              "end": 20560,
                              "loc": {
                                "start": {
                                  "line": 478,
                                  "column": 12
                                },
                                "end": {
                                  "line": 478,
                                  "column": 25
                                }
                              },
                              "name": "snappingShift"
                            },
                            "value": {
                              "type": "CallExpression",
                              "start": 20562,
                              "end": 20596,
                              "loc": {
                                "start": {
                                  "line": 478,
                                  "column": 27
                                },
                                "end": {
                                  "line": 478,
                                  "column": 61
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 20562,
                                "end": 20586,
                                "loc": {
                                  "start": {
                                    "line": 478,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 478,
                                    "column": 51
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 20562,
                                  "end": 20582,
                                  "loc": {
                                    "start": {
                                      "line": 478,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 478,
                                      "column": 47
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 20562,
                                    "end": 20580,
                                    "loc": {
                                      "start": {
                                        "line": 478,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 478,
                                        "column": 45
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 20562,
                                      "end": 20574,
                                      "loc": {
                                        "start": {
                                          "line": 478,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 478,
                                          "column": 39
                                        }
                                      },
                                      "name": "closestPoint"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20575,
                                      "end": 20580,
                                      "loc": {
                                        "start": {
                                          "line": 478,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 478,
                                          "column": 45
                                        }
                                      },
                                      "name": "clone"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20583,
                                  "end": 20586,
                                  "loc": {
                                    "start": {
                                      "line": 478,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 478,
                                      "column": 51
                                    }
                                  },
                                  "name": "sub"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 20587,
                                  "end": 20595,
                                  "loc": {
                                    "start": {
                                      "line": 478,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 478,
                                      "column": 60
                                    }
                                  },
                                  "name": "newPoint"
                                }
                              ]
                            },
                            "kind": "init"
                          },
                          {
                            "type": "Property",
                            "start": 20611,
                            "end": 20631,
                            "loc": {
                              "start": {
                                "line": 479,
                                "column": 12
                              },
                              "end": {
                                "line": 479,
                                "column": 32
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 20611,
                              "end": 20620,
                              "loc": {
                                "start": {
                                  "line": 479,
                                  "column": 12
                                },
                                "end": {
                                  "line": 479,
                                  "column": 21
                                }
                              },
                              "name": "isSnapped"
                            },
                            "value": {
                              "type": "Identifier",
                              "start": 20622,
                              "end": 20631,
                              "loc": {
                                "start": {
                                  "line": 479,
                                  "column": 23
                                },
                                "end": {
                                  "line": 479,
                                  "column": 32
                                }
                              },
                              "name": "isSnapped"
                            },
                            "kind": "init"
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 20658,
              "end": 21273,
              "loc": {
                "start": {
                  "line": 483,
                  "column": 4
                },
                "end": {
                  "line": 492,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 20658,
                "end": 20677,
                "loc": {
                  "start": {
                    "line": 483,
                    "column": 4
                  },
                  "end": {
                    "line": 483,
                    "column": 23
                  }
                },
                "name": "getClosestSnapPoint"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 20677,
                "end": 21273,
                "loc": {
                  "start": {
                    "line": 483,
                    "column": 23
                  },
                  "end": {
                    "line": 492,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 20678,
                    "end": 20686,
                    "loc": {
                      "start": {
                        "line": 483,
                        "column": 24
                      },
                      "end": {
                        "line": 483,
                        "column": 32
                      }
                    },
                    "name": "position"
                  },
                  {
                    "type": "Identifier",
                    "start": 20688,
                    "end": 20699,
                    "loc": {
                      "start": {
                        "line": 483,
                        "column": 34
                      },
                      "end": {
                        "line": 483,
                        "column": 45
                      }
                    },
                    "name": "maxDistance"
                  },
                  {
                    "type": "Identifier",
                    "start": 20701,
                    "end": 20713,
                    "loc": {
                      "start": {
                        "line": 483,
                        "column": 47
                      },
                      "end": {
                        "line": 483,
                        "column": 59
                      }
                    },
                    "name": "ignoreFilter"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 20715,
                  "end": 21273,
                  "loc": {
                    "start": {
                      "line": 483,
                      "column": 61
                    },
                    "end": {
                      "line": 492,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 20726,
                      "end": 20758,
                      "loc": {
                        "start": {
                          "line": 484,
                          "column": 8
                        },
                        "end": {
                          "line": 484,
                          "column": 40
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 20730,
                          "end": 20757,
                          "loc": {
                            "start": {
                              "line": 484,
                              "column": 12
                            },
                            "end": {
                              "line": 484,
                              "column": 39
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 20730,
                            "end": 20738,
                            "loc": {
                              "start": {
                                "line": 484,
                                "column": 12
                              },
                              "end": {
                                "line": 484,
                                "column": 20
                              }
                            },
                            "name": "toReturn"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 20741,
                            "end": 20757,
                            "loc": {
                              "start": {
                                "line": 484,
                                "column": 23
                              },
                              "end": {
                                "line": 484,
                                "column": 39
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 20741,
                              "end": 20755,
                              "loc": {
                                "start": {
                                  "line": 484,
                                  "column": 23
                                },
                                "end": {
                                  "line": 484,
                                  "column": 37
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 20741,
                                "end": 20749,
                                "loc": {
                                  "start": {
                                    "line": 484,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 484,
                                    "column": 31
                                  }
                                },
                                "name": "position"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 20750,
                                "end": 20755,
                                "loc": {
                                  "start": {
                                    "line": 484,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 484,
                                    "column": 37
                                  }
                                },
                                "name": "clone"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 20768,
                      "end": 20853,
                      "loc": {
                        "start": {
                          "line": 485,
                          "column": 8
                        },
                        "end": {
                          "line": 485,
                          "column": 93
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 20772,
                          "end": 20852,
                          "loc": {
                            "start": {
                              "line": 485,
                              "column": 12
                            },
                            "end": {
                              "line": 485,
                              "column": 92
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 20772,
                            "end": 20788,
                            "loc": {
                              "start": {
                                "line": 485,
                                "column": 12
                              },
                              "end": {
                                "line": 485,
                                "column": 28
                              }
                            },
                            "name": "gridClosestPoint"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 20791,
                            "end": 20852,
                            "loc": {
                              "start": {
                                "line": 485,
                                "column": 31
                              },
                              "end": {
                                "line": 485,
                                "column": 92
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 20791,
                              "end": 20815,
                              "loc": {
                                "start": {
                                  "line": 485,
                                  "column": 31
                                },
                                "end": {
                                  "line": 485,
                                  "column": 55
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 20791,
                                "end": 20795,
                                "loc": {
                                  "start": {
                                    "line": 485,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 485,
                                    "column": 35
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 20796,
                                "end": 20815,
                                "loc": {
                                  "start": {
                                    "line": 485,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 485,
                                    "column": 55
                                  }
                                },
                                "name": "getClosestGridPoint"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 20816,
                                "end": 20824,
                                "loc": {
                                  "start": {
                                    "line": 485,
                                    "column": 56
                                  },
                                  "end": {
                                    "line": 485,
                                    "column": 64
                                  }
                                },
                                "name": "toReturn"
                              },
                              {
                                "type": "Identifier",
                                "start": 20826,
                                "end": 20837,
                                "loc": {
                                  "start": {
                                    "line": 485,
                                    "column": 66
                                  },
                                  "end": {
                                    "line": 485,
                                    "column": 77
                                  }
                                },
                                "name": "maxDistance"
                              },
                              {
                                "type": "Identifier",
                                "start": 20839,
                                "end": 20851,
                                "loc": {
                                  "start": {
                                    "line": 485,
                                    "column": 79
                                  },
                                  "end": {
                                    "line": 485,
                                    "column": 91
                                  }
                                },
                                "name": "ignoreFilter"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 20863,
                      "end": 20948,
                      "loc": {
                        "start": {
                          "line": 486,
                          "column": 8
                        },
                        "end": {
                          "line": 486,
                          "column": 93
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 20867,
                          "end": 20947,
                          "loc": {
                            "start": {
                              "line": 486,
                              "column": 12
                            },
                            "end": {
                              "line": 486,
                              "column": 92
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 20867,
                            "end": 20883,
                            "loc": {
                              "start": {
                                "line": 486,
                                "column": 12
                              },
                              "end": {
                                "line": 486,
                                "column": 28
                              }
                            },
                            "name": "geomClosestPoint"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 20886,
                            "end": 20947,
                            "loc": {
                              "start": {
                                "line": 486,
                                "column": 31
                              },
                              "end": {
                                "line": 486,
                                "column": 92
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 20886,
                              "end": 20910,
                              "loc": {
                                "start": {
                                  "line": 486,
                                  "column": 31
                                },
                                "end": {
                                  "line": 486,
                                  "column": 55
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 20886,
                                "end": 20890,
                                "loc": {
                                  "start": {
                                    "line": 486,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 486,
                                    "column": 35
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 20891,
                                "end": 20910,
                                "loc": {
                                  "start": {
                                    "line": 486,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 486,
                                    "column": 55
                                  }
                                },
                                "name": "getClosestGeomPoint"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 20911,
                                "end": 20919,
                                "loc": {
                                  "start": {
                                    "line": 486,
                                    "column": 56
                                  },
                                  "end": {
                                    "line": 486,
                                    "column": 64
                                  }
                                },
                                "name": "toReturn"
                              },
                              {
                                "type": "Identifier",
                                "start": 20921,
                                "end": 20932,
                                "loc": {
                                  "start": {
                                    "line": 486,
                                    "column": 66
                                  },
                                  "end": {
                                    "line": 486,
                                    "column": 77
                                  }
                                },
                                "name": "maxDistance"
                              },
                              {
                                "type": "Identifier",
                                "start": 20934,
                                "end": 20946,
                                "loc": {
                                  "start": {
                                    "line": 486,
                                    "column": 79
                                  },
                                  "end": {
                                    "line": 486,
                                    "column": 91
                                  }
                                },
                                "name": "ignoreFilter"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 20960,
                      "end": 21266,
                      "loc": {
                        "start": {
                          "line": 488,
                          "column": 8
                        },
                        "end": {
                          "line": 491,
                          "column": 86
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 20964,
                        "end": 21020,
                        "loc": {
                          "start": {
                            "line": 488,
                            "column": 12
                          },
                          "end": {
                            "line": 488,
                            "column": 68
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 20964,
                          "end": 20990,
                          "loc": {
                            "start": {
                              "line": 488,
                              "column": 12
                            },
                            "end": {
                              "line": 488,
                              "column": 38
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 20964,
                            "end": 20980,
                            "loc": {
                              "start": {
                                "line": 488,
                                "column": 12
                              },
                              "end": {
                                "line": 488,
                                "column": 28
                              }
                            },
                            "name": "geomClosestPoint"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20981,
                            "end": 20990,
                            "loc": {
                              "start": {
                                "line": 488,
                                "column": 29
                              },
                              "end": {
                                "line": 488,
                                "column": 38
                              }
                            },
                            "name": "isSnapped"
                          },
                          "computed": false
                        },
                        "operator": "&&",
                        "right": {
                          "type": "MemberExpression",
                          "start": 20994,
                          "end": 21020,
                          "loc": {
                            "start": {
                              "line": 488,
                              "column": 42
                            },
                            "end": {
                              "line": 488,
                              "column": 68
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 20994,
                            "end": 21010,
                            "loc": {
                              "start": {
                                "line": 488,
                                "column": 42
                              },
                              "end": {
                                "line": 488,
                                "column": 58
                              }
                            },
                            "name": "gridClosestPoint"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 21011,
                            "end": 21020,
                            "loc": {
                              "start": {
                                "line": 488,
                                "column": 59
                              },
                              "end": {
                                "line": 488,
                                "column": 68
                              }
                            },
                            "name": "isSnapped"
                          },
                          "computed": false
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 21035,
                        "end": 21164,
                        "loc": {
                          "start": {
                            "line": 489,
                            "column": 12
                          },
                          "end": {
                            "line": 489,
                            "column": 141
                          }
                        },
                        "argument": {
                          "type": "ConditionalExpression",
                          "start": 21042,
                          "end": 21163,
                          "loc": {
                            "start": {
                              "line": 489,
                              "column": 19
                            },
                            "end": {
                              "line": 489,
                              "column": 140
                            }
                          },
                          "test": {
                            "type": "BinaryExpression",
                            "start": 21042,
                            "end": 21123,
                            "loc": {
                              "start": {
                                "line": 489,
                                "column": 19
                              },
                              "end": {
                                "line": 489,
                                "column": 100
                              }
                            },
                            "left": {
                              "type": "CallExpression",
                              "start": 21042,
                              "end": 21081,
                              "loc": {
                                "start": {
                                  "line": 489,
                                  "column": 19
                                },
                                "end": {
                                  "line": 489,
                                  "column": 58
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 21042,
                                "end": 21079,
                                "loc": {
                                  "start": {
                                    "line": 489,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 489,
                                    "column": 56
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 21042,
                                  "end": 21072,
                                  "loc": {
                                    "start": {
                                      "line": 489,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 489,
                                      "column": 49
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 21042,
                                    "end": 21058,
                                    "loc": {
                                      "start": {
                                        "line": 489,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 489,
                                        "column": 35
                                      }
                                    },
                                    "name": "geomClosestPoint"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 21059,
                                    "end": 21072,
                                    "loc": {
                                      "start": {
                                        "line": 489,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 489,
                                        "column": 49
                                      }
                                    },
                                    "name": "snappingShift"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 21073,
                                  "end": 21079,
                                  "loc": {
                                    "start": {
                                      "line": 489,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 489,
                                      "column": 56
                                    }
                                  },
                                  "name": "length"
                                },
                                "computed": false
                              },
                              "arguments": []
                            },
                            "operator": "<",
                            "right": {
                              "type": "CallExpression",
                              "start": 21084,
                              "end": 21123,
                              "loc": {
                                "start": {
                                  "line": 489,
                                  "column": 61
                                },
                                "end": {
                                  "line": 489,
                                  "column": 100
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 21084,
                                "end": 21121,
                                "loc": {
                                  "start": {
                                    "line": 489,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 489,
                                    "column": 98
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 21084,
                                  "end": 21114,
                                  "loc": {
                                    "start": {
                                      "line": 489,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 489,
                                      "column": 91
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 21084,
                                    "end": 21100,
                                    "loc": {
                                      "start": {
                                        "line": 489,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 489,
                                        "column": 77
                                      }
                                    },
                                    "name": "gridClosestPoint"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 21101,
                                    "end": 21114,
                                    "loc": {
                                      "start": {
                                        "line": 489,
                                        "column": 78
                                      },
                                      "end": {
                                        "line": 489,
                                        "column": 91
                                      }
                                    },
                                    "name": "snappingShift"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 21115,
                                  "end": 21121,
                                  "loc": {
                                    "start": {
                                      "line": 489,
                                      "column": 92
                                    },
                                    "end": {
                                      "line": 489,
                                      "column": 98
                                    }
                                  },
                                  "name": "length"
                                },
                                "computed": false
                              },
                              "arguments": []
                            }
                          },
                          "consequent": {
                            "type": "Identifier",
                            "start": 21127,
                            "end": 21143,
                            "loc": {
                              "start": {
                                "line": 489,
                                "column": 104
                              },
                              "end": {
                                "line": 489,
                                "column": 120
                              }
                            },
                            "name": "geomClosestPoint"
                          },
                          "alternate": {
                            "type": "Identifier",
                            "start": 21147,
                            "end": 21163,
                            "loc": {
                              "start": {
                                "line": 489,
                                "column": 124
                              },
                              "end": {
                                "line": 489,
                                "column": 140
                              }
                            },
                            "name": "gridClosestPoint"
                          }
                        }
                      },
                      "alternate": {
                        "type": "ReturnStatement",
                        "start": 21192,
                        "end": 21266,
                        "loc": {
                          "start": {
                            "line": 491,
                            "column": 12
                          },
                          "end": {
                            "line": 491,
                            "column": 86
                          }
                        },
                        "argument": {
                          "type": "ConditionalExpression",
                          "start": 21199,
                          "end": 21265,
                          "loc": {
                            "start": {
                              "line": 491,
                              "column": 19
                            },
                            "end": {
                              "line": 491,
                              "column": 85
                            }
                          },
                          "test": {
                            "type": "MemberExpression",
                            "start": 21199,
                            "end": 21225,
                            "loc": {
                              "start": {
                                "line": 491,
                                "column": 19
                              },
                              "end": {
                                "line": 491,
                                "column": 45
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 21199,
                              "end": 21215,
                              "loc": {
                                "start": {
                                  "line": 491,
                                  "column": 19
                                },
                                "end": {
                                  "line": 491,
                                  "column": 35
                                }
                              },
                              "name": "geomClosestPoint"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 21216,
                              "end": 21225,
                              "loc": {
                                "start": {
                                  "line": 491,
                                  "column": 36
                                },
                                "end": {
                                  "line": 491,
                                  "column": 45
                                }
                              },
                              "name": "isSnapped"
                            },
                            "computed": false
                          },
                          "consequent": {
                            "type": "Identifier",
                            "start": 21229,
                            "end": 21245,
                            "loc": {
                              "start": {
                                "line": 491,
                                "column": 49
                              },
                              "end": {
                                "line": 491,
                                "column": 65
                              }
                            },
                            "name": "geomClosestPoint"
                          },
                          "alternate": {
                            "type": "Identifier",
                            "start": 21249,
                            "end": 21265,
                            "loc": {
                              "start": {
                                "line": 491,
                                "column": 69
                              },
                              "end": {
                                "line": 491,
                                "column": 85
                              }
                            },
                            "name": "gridClosestPoint"
                          }
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 21281,
              "end": 24476,
              "loc": {
                "start": {
                  "line": 494,
                  "column": 4
                },
                "end": {
                  "line": 564,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 21281,
                "end": 21300,
                "loc": {
                  "start": {
                    "line": 494,
                    "column": 4
                  },
                  "end": {
                    "line": 494,
                    "column": 23
                  }
                },
                "name": "getSnappedPointWrap"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 21300,
                "end": 24476,
                "loc": {
                  "start": {
                    "line": 494,
                    "column": 23
                  },
                  "end": {
                    "line": 564,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 21301,
                    "end": 21314,
                    "loc": {
                      "start": {
                        "line": 494,
                        "column": 24
                      },
                      "end": {
                        "line": 494,
                        "column": 37
                      }
                    },
                    "name": "mousePosition"
                  },
                  {
                    "type": "Identifier",
                    "start": 21316,
                    "end": 21319,
                    "loc": {
                      "start": {
                        "line": 494,
                        "column": 39
                      },
                      "end": {
                        "line": 494,
                        "column": 42
                      }
                    },
                    "name": "obj"
                  },
                  {
                    "type": "Identifier",
                    "start": 21321,
                    "end": 21334,
                    "loc": {
                      "start": {
                        "line": 494,
                        "column": 44
                      },
                      "end": {
                        "line": 494,
                        "column": 57
                      }
                    },
                    "name": "lastDragPoint"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 21336,
                  "end": 24476,
                  "loc": {
                    "start": {
                      "line": 494,
                      "column": 59
                    },
                    "end": {
                      "line": 564,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 21347,
                      "end": 21378,
                      "loc": {
                        "start": {
                          "line": 495,
                          "column": 8
                        },
                        "end": {
                          "line": 495,
                          "column": 39
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 21351,
                        "end": 21355,
                        "loc": {
                          "start": {
                            "line": 495,
                            "column": 12
                          },
                          "end": {
                            "line": 495,
                            "column": 16
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 21352,
                          "end": 21355,
                          "loc": {
                            "start": {
                              "line": 495,
                              "column": 13
                            },
                            "end": {
                              "line": 495,
                              "column": 16
                            }
                          },
                          "name": "obj"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 21357,
                        "end": 21378,
                        "loc": {
                          "start": {
                            "line": 495,
                            "column": 18
                          },
                          "end": {
                            "line": 495,
                            "column": 39
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 21364,
                          "end": 21377,
                          "loc": {
                            "start": {
                              "line": 495,
                              "column": 25
                            },
                            "end": {
                              "line": 495,
                              "column": 38
                            }
                          },
                          "name": "mousePosition"
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 21390,
                      "end": 21419,
                      "loc": {
                        "start": {
                          "line": 497,
                          "column": 8
                        },
                        "end": {
                          "line": 497,
                          "column": 37
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 21394,
                          "end": 21418,
                          "loc": {
                            "start": {
                              "line": 497,
                              "column": 12
                            },
                            "end": {
                              "line": 497,
                              "column": 36
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 21394,
                            "end": 21402,
                            "loc": {
                              "start": {
                                "line": 497,
                                "column": 12
                              },
                              "end": {
                                "line": 497,
                                "column": 20
                              }
                            },
                            "name": "sketcher"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 21405,
                            "end": 21418,
                            "loc": {
                              "start": {
                                "line": 497,
                                "column": 23
                              },
                              "end": {
                                "line": 497,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 21405,
                              "end": 21409,
                              "loc": {
                                "start": {
                                  "line": 497,
                                  "column": 23
                                },
                                "end": {
                                  "line": 497,
                                  "column": 27
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 21410,
                              "end": 21418,
                              "loc": {
                                "start": {
                                  "line": 497,
                                  "column": 28
                                },
                                "end": {
                                  "line": 497,
                                  "column": 36
                                }
                              },
                              "name": "sketcher"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 21429,
                      "end": 21480,
                      "loc": {
                        "start": {
                          "line": 498,
                          "column": 8
                        },
                        "end": {
                          "line": 498,
                          "column": 59
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 21433,
                          "end": 21479,
                          "loc": {
                            "start": {
                              "line": 498,
                              "column": 12
                            },
                            "end": {
                              "line": 498,
                              "column": 58
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 21433,
                            "end": 21444,
                            "loc": {
                              "start": {
                                "line": 498,
                                "column": 12
                              },
                              "end": {
                                "line": 498,
                                "column": 23
                              }
                            },
                            "name": "maxDistance"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 21447,
                            "end": 21479,
                            "loc": {
                              "start": {
                                "line": 498,
                                "column": 26
                              },
                              "end": {
                                "line": 498,
                                "column": 58
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 21447,
                              "end": 21473,
                              "loc": {
                                "start": {
                                  "line": 498,
                                  "column": 26
                                },
                                "end": {
                                  "line": 498,
                                  "column": 52
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 21447,
                                "end": 21471,
                                "loc": {
                                  "start": {
                                    "line": 498,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 498,
                                    "column": 50
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 21447,
                                  "end": 21465,
                                  "loc": {
                                    "start": {
                                      "line": 498,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 498,
                                      "column": 44
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 21447,
                                    "end": 21460,
                                    "loc": {
                                      "start": {
                                        "line": 498,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 498,
                                        "column": 39
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 21447,
                                      "end": 21457,
                                      "loc": {
                                        "start": {
                                          "line": 498,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 498,
                                          "column": 36
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 21447,
                                        "end": 21450,
                                        "loc": {
                                          "start": {
                                            "line": 498,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 498,
                                            "column": 29
                                          }
                                        },
                                        "name": "obj"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 21451,
                                        "end": 21457,
                                        "loc": {
                                          "start": {
                                            "line": 498,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 498,
                                            "column": 36
                                          }
                                        },
                                        "name": "points"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Literal",
                                      "start": 21458,
                                      "end": 21459,
                                      "loc": {
                                        "start": {
                                          "line": 498,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 498,
                                          "column": 38
                                        }
                                      },
                                      "value": 0,
                                      "rawValue": 0,
                                      "raw": "0"
                                    },
                                    "computed": true
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 21461,
                                    "end": 21465,
                                    "loc": {
                                      "start": {
                                        "line": 498,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 498,
                                        "column": 44
                                      }
                                    },
                                    "name": "mesh"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 21466,
                                  "end": 21471,
                                  "loc": {
                                    "start": {
                                      "line": 498,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 498,
                                      "column": 50
                                    }
                                  },
                                  "name": "scale"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 21472,
                                "end": 21473,
                                "loc": {
                                  "start": {
                                    "line": 498,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 498,
                                    "column": 52
                                  }
                                },
                                "name": "x"
                              },
                              "computed": false
                            },
                            "operator": "*",
                            "right": {
                              "type": "Literal",
                              "start": 21476,
                              "end": 21479,
                              "loc": {
                                "start": {
                                  "line": 498,
                                  "column": 55
                                },
                                "end": {
                                  "line": 498,
                                  "column": 58
                                }
                              },
                              "value": 1.5,
                              "rawValue": 1.5,
                              "raw": "1.5"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "FunctionDeclaration",
                      "start": 21492,
                      "end": 22946,
                      "loc": {
                        "start": {
                          "line": 500,
                          "column": 8
                        },
                        "end": {
                          "line": 530,
                          "column": 9
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 21501,
                        "end": 21516,
                        "loc": {
                          "start": {
                            "line": 500,
                            "column": 17
                          },
                          "end": {
                            "line": 500,
                            "column": 32
                          }
                        },
                        "name": "snapToDirection"
                      },
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [],
                      "body": {
                        "type": "BlockStatement",
                        "start": 21519,
                        "end": 22946,
                        "loc": {
                          "start": {
                            "line": 500,
                            "column": 35
                          },
                          "end": {
                            "line": 530,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 21534,
                            "end": 21571,
                            "loc": {
                              "start": {
                                "line": 501,
                                "column": 12
                              },
                              "end": {
                                "line": 501,
                                "column": 49
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 21538,
                                "end": 21570,
                                "loc": {
                                  "start": {
                                    "line": 501,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 501,
                                    "column": 48
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 21538,
                                  "end": 21546,
                                  "loc": {
                                    "start": {
                                      "line": 501,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 501,
                                      "column": 24
                                    }
                                  },
                                  "name": "toReturn"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 21549,
                                  "end": 21570,
                                  "loc": {
                                    "start": {
                                      "line": 501,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 501,
                                      "column": 48
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 21549,
                                    "end": 21568,
                                    "loc": {
                                      "start": {
                                        "line": 501,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 501,
                                        "column": 46
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 21549,
                                      "end": 21562,
                                      "loc": {
                                        "start": {
                                          "line": 501,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 501,
                                          "column": 40
                                        }
                                      },
                                      "name": "mousePosition"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 21563,
                                      "end": 21568,
                                      "loc": {
                                        "start": {
                                          "line": 501,
                                          "column": 41
                                        },
                                        "end": {
                                          "line": 501,
                                          "column": 46
                                        }
                                      },
                                      "name": "clone"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 21587,
                            "end": 21609,
                            "loc": {
                              "start": {
                                "line": 503,
                                "column": 12
                              },
                              "end": {
                                "line": 503,
                                "column": 34
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 21591,
                                "end": 21608,
                                "loc": {
                                  "start": {
                                    "line": 503,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 503,
                                    "column": 33
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 21591,
                                  "end": 21595,
                                  "loc": {
                                    "start": {
                                      "line": 503,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 503,
                                      "column": 20
                                    }
                                  },
                                  "name": "line"
                                },
                                "init": {
                                  "type": "MemberExpression",
                                  "start": 21598,
                                  "end": 21608,
                                  "loc": {
                                    "start": {
                                      "line": 503,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 503,
                                      "column": 33
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 21598,
                                    "end": 21601,
                                    "loc": {
                                      "start": {
                                        "line": 503,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 503,
                                        "column": 26
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 21602,
                                    "end": 21608,
                                    "loc": {
                                      "start": {
                                        "line": 503,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 503,
                                        "column": 33
                                      }
                                    },
                                    "name": "parent"
                                  },
                                  "computed": false
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 21623,
                            "end": 21664,
                            "loc": {
                              "start": {
                                "line": 504,
                                "column": 12
                              },
                              "end": {
                                "line": 504,
                                "column": 53
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 21627,
                                "end": 21662,
                                "loc": {
                                  "start": {
                                    "line": 504,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 504,
                                    "column": 51
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 21627,
                                  "end": 21630,
                                  "loc": {
                                    "start": {
                                      "line": 504,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 504,
                                      "column": 19
                                    }
                                  },
                                  "name": "idx"
                                },
                                "init": {
                                  "type": "ConditionalExpression",
                                  "start": 21633,
                                  "end": 21662,
                                  "loc": {
                                    "start": {
                                      "line": 504,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 504,
                                      "column": 51
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 21633,
                                    "end": 21654,
                                    "loc": {
                                      "start": {
                                        "line": 504,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 504,
                                        "column": 43
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 21633,
                                      "end": 21647,
                                      "loc": {
                                        "start": {
                                          "line": 504,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 504,
                                          "column": 36
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 21633,
                                        "end": 21644,
                                        "loc": {
                                          "start": {
                                            "line": 504,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 504,
                                            "column": 33
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 21633,
                                          "end": 21637,
                                          "loc": {
                                            "start": {
                                              "line": 504,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 504,
                                              "column": 26
                                            }
                                          },
                                          "name": "line"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 21638,
                                          "end": 21644,
                                          "loc": {
                                            "start": {
                                              "line": 504,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 504,
                                              "column": 33
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 21645,
                                        "end": 21646,
                                        "loc": {
                                          "start": {
                                            "line": 504,
                                            "column": 34
                                          },
                                          "end": {
                                            "line": 504,
                                            "column": 35
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "operator": "==",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 21651,
                                      "end": 21654,
                                      "loc": {
                                        "start": {
                                          "line": 504,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 504,
                                          "column": 43
                                        }
                                      },
                                      "name": "obj"
                                    }
                                  },
                                  "consequent": {
                                    "type": "Literal",
                                    "start": 21657,
                                    "end": 21658,
                                    "loc": {
                                      "start": {
                                        "line": 504,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 504,
                                        "column": 47
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "alternate": {
                                    "type": "Literal",
                                    "start": 21661,
                                    "end": 21662,
                                    "loc": {
                                      "start": {
                                        "line": 504,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 504,
                                        "column": 51
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  }
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 21678,
                            "end": 21729,
                            "loc": {
                              "start": {
                                "line": 505,
                                "column": 12
                              },
                              "end": {
                                "line": 505,
                                "column": 63
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 21682,
                                "end": 21728,
                                "loc": {
                                  "start": {
                                    "line": 505,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 505,
                                    "column": 62
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 21682,
                                  "end": 21696,
                                  "loc": {
                                    "start": {
                                      "line": 505,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 505,
                                      "column": 30
                                    }
                                  },
                                  "name": "neighbourPoint"
                                },
                                "init": {
                                  "type": "MemberExpression",
                                  "start": 21699,
                                  "end": 21728,
                                  "loc": {
                                    "start": {
                                      "line": 505,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 505,
                                      "column": 62
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 21699,
                                    "end": 21719,
                                    "loc": {
                                      "start": {
                                        "line": 505,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 505,
                                        "column": 53
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 21699,
                                      "end": 21710,
                                      "loc": {
                                        "start": {
                                          "line": 505,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 505,
                                          "column": 44
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 21699,
                                        "end": 21703,
                                        "loc": {
                                          "start": {
                                            "line": 505,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 505,
                                            "column": 37
                                          }
                                        },
                                        "name": "line"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 21704,
                                        "end": 21710,
                                        "loc": {
                                          "start": {
                                            "line": 505,
                                            "column": 38
                                          },
                                          "end": {
                                            "line": 505,
                                            "column": 44
                                          }
                                        },
                                        "name": "points"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "BinaryExpression",
                                      "start": 21711,
                                      "end": 21718,
                                      "loc": {
                                        "start": {
                                          "line": 505,
                                          "column": 45
                                        },
                                        "end": {
                                          "line": 505,
                                          "column": 52
                                        }
                                      },
                                      "left": {
                                        "type": "Literal",
                                        "start": 21711,
                                        "end": 21712,
                                        "loc": {
                                          "start": {
                                            "line": 505,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 505,
                                            "column": 46
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      "operator": "-",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 21715,
                                        "end": 21718,
                                        "loc": {
                                          "start": {
                                            "line": 505,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 505,
                                            "column": 52
                                          }
                                        },
                                        "name": "idx"
                                      }
                                    },
                                    "computed": true
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 21720,
                                    "end": 21728,
                                    "loc": {
                                      "start": {
                                        "line": 505,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 505,
                                        "column": 62
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 21745,
                            "end": 21777,
                            "loc": {
                              "start": {
                                "line": 507,
                                "column": 12
                              },
                              "end": {
                                "line": 507,
                                "column": 44
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 21749,
                                "end": 21776,
                                "loc": {
                                  "start": {
                                    "line": 507,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 507,
                                    "column": 43
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 21749,
                                  "end": 21754,
                                  "loc": {
                                    "start": {
                                      "line": 507,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 507,
                                      "column": 21
                                    }
                                  },
                                  "name": "delta"
                                },
                                "init": {
                                  "type": "NewExpression",
                                  "start": 21757,
                                  "end": 21776,
                                  "loc": {
                                    "start": {
                                      "line": 507,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 507,
                                      "column": 43
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 21761,
                                    "end": 21774,
                                    "loc": {
                                      "start": {
                                        "line": 507,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 507,
                                        "column": 41
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 21761,
                                      "end": 21766,
                                      "loc": {
                                        "start": {
                                          "line": 507,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 507,
                                          "column": 33
                                        }
                                      },
                                      "name": "THREE"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 21767,
                                      "end": 21774,
                                      "loc": {
                                        "start": {
                                          "line": 507,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 507,
                                          "column": 41
                                        }
                                      },
                                      "name": "Vector3"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 21791,
                            "end": 21834,
                            "loc": {
                              "start": {
                                "line": 508,
                                "column": 12
                              },
                              "end": {
                                "line": 508,
                                "column": 55
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 21791,
                              "end": 21833,
                              "loc": {
                                "start": {
                                  "line": 508,
                                  "column": 12
                                },
                                "end": {
                                  "line": 508,
                                  "column": 54
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 21791,
                                "end": 21807,
                                "loc": {
                                  "start": {
                                    "line": 508,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 508,
                                    "column": 28
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 21791,
                                  "end": 21796,
                                  "loc": {
                                    "start": {
                                      "line": 508,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 508,
                                      "column": 17
                                    }
                                  },
                                  "name": "delta"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 21797,
                                  "end": 21807,
                                  "loc": {
                                    "start": {
                                      "line": 508,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 508,
                                      "column": 28
                                    }
                                  },
                                  "name": "subVectors"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 21808,
                                  "end": 21816,
                                  "loc": {
                                    "start": {
                                      "line": 508,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 508,
                                      "column": 37
                                    }
                                  },
                                  "name": "toReturn"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 21818,
                                  "end": 21832,
                                  "loc": {
                                    "start": {
                                      "line": 508,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 508,
                                      "column": 53
                                    }
                                  },
                                  "name": "neighbourPoint"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 21848,
                            "end": 21862,
                            "loc": {
                              "start": {
                                "line": 509,
                                "column": 12
                              },
                              "end": {
                                "line": 509,
                                "column": 26
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 21848,
                              "end": 21861,
                              "loc": {
                                "start": {
                                  "line": 509,
                                  "column": 12
                                },
                                "end": {
                                  "line": 509,
                                  "column": 25
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 21848,
                                "end": 21855,
                                "loc": {
                                  "start": {
                                    "line": 509,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 509,
                                    "column": 19
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 21848,
                                  "end": 21853,
                                  "loc": {
                                    "start": {
                                      "line": 509,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 509,
                                      "column": 17
                                    }
                                  },
                                  "name": "delta"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 21854,
                                  "end": 21855,
                                  "loc": {
                                    "start": {
                                      "line": 509,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 509,
                                      "column": 19
                                    }
                                  },
                                  "name": "z"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 21858,
                                "end": 21861,
                                "loc": {
                                  "start": {
                                    "line": 509,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 509,
                                    "column": 25
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0.0"
                              }
                            }
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 21878,
                            "end": 21903,
                            "loc": {
                              "start": {
                                "line": 511,
                                "column": 12
                              },
                              "end": {
                                "line": 511,
                                "column": 37
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 21882,
                                "end": 21902,
                                "loc": {
                                  "start": {
                                    "line": 511,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 511,
                                    "column": 36
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 21882,
                                  "end": 21885,
                                  "loc": {
                                    "start": {
                                      "line": 511,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 511,
                                      "column": 19
                                    }
                                  },
                                  "name": "len"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 21888,
                                  "end": 21902,
                                  "loc": {
                                    "start": {
                                      "line": 511,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 511,
                                      "column": 36
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 21888,
                                    "end": 21900,
                                    "loc": {
                                      "start": {
                                        "line": 511,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 511,
                                        "column": 34
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 21888,
                                      "end": 21893,
                                      "loc": {
                                        "start": {
                                          "line": 511,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 511,
                                          "column": 27
                                        }
                                      },
                                      "name": "delta"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 21894,
                                      "end": 21900,
                                      "loc": {
                                        "start": {
                                          "line": 511,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 511,
                                          "column": 34
                                        }
                                      },
                                      "name": "length"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "IfStatement",
                            "start": 21917,
                            "end": 22903,
                            "loc": {
                              "start": {
                                "line": 512,
                                "column": 12
                              },
                              "end": {
                                "line": 527,
                                "column": 13
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 21921,
                              "end": 21932,
                              "loc": {
                                "start": {
                                  "line": 512,
                                  "column": 16
                                },
                                "end": {
                                  "line": 512,
                                  "column": 27
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 21921,
                                "end": 21924,
                                "loc": {
                                  "start": {
                                    "line": 512,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 512,
                                    "column": 19
                                  }
                                },
                                "name": "len"
                              },
                              "operator": ">",
                              "right": {
                                "type": "Literal",
                                "start": 21927,
                                "end": 21932,
                                "loc": {
                                  "start": {
                                    "line": 512,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 512,
                                    "column": 27
                                  }
                                },
                                "value": 0.001,
                                "rawValue": 0.001,
                                "raw": "0.001"
                              }
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 21934,
                              "end": 22903,
                              "loc": {
                                "start": {
                                  "line": 512,
                                  "column": 29
                                },
                                "end": {
                                  "line": 527,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "VariableDeclaration",
                                  "start": 21953,
                                  "end": 21995,
                                  "loc": {
                                    "start": {
                                      "line": 513,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 513,
                                      "column": 58
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 21957,
                                      "end": 21994,
                                      "loc": {
                                        "start": {
                                          "line": 513,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 513,
                                          "column": 57
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 21957,
                                        "end": 21959,
                                        "loc": {
                                          "start": {
                                            "line": 513,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 513,
                                            "column": 22
                                          }
                                        },
                                        "name": "oX"
                                      },
                                      "init": {
                                        "type": "NewExpression",
                                        "start": 21962,
                                        "end": 21994,
                                        "loc": {
                                          "start": {
                                            "line": 513,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 513,
                                            "column": 57
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 21966,
                                          "end": 21979,
                                          "loc": {
                                            "start": {
                                              "line": 513,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 513,
                                              "column": 42
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21966,
                                            "end": 21971,
                                            "loc": {
                                              "start": {
                                                "line": 513,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 513,
                                                "column": 34
                                              }
                                            },
                                            "name": "THREE"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21972,
                                            "end": 21979,
                                            "loc": {
                                              "start": {
                                                "line": 513,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 513,
                                                "column": 42
                                              }
                                            },
                                            "name": "Vector3"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Literal",
                                            "start": 21980,
                                            "end": 21983,
                                            "loc": {
                                              "start": {
                                                "line": 513,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 513,
                                                "column": 46
                                              }
                                            },
                                            "value": 1,
                                            "rawValue": 1,
                                            "raw": "1.0"
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 21985,
                                            "end": 21988,
                                            "loc": {
                                              "start": {
                                                "line": 513,
                                                "column": 48
                                              },
                                              "end": {
                                                "line": 513,
                                                "column": 51
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0.0"
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 21990,
                                            "end": 21993,
                                            "loc": {
                                              "start": {
                                                "line": 513,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 513,
                                                "column": 56
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0.0"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 22013,
                                  "end": 22052,
                                  "loc": {
                                    "start": {
                                      "line": 514,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 514,
                                      "column": 55
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 22017,
                                      "end": 22051,
                                      "loc": {
                                        "start": {
                                          "line": 514,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 514,
                                          "column": 54
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 22017,
                                        "end": 22031,
                                        "loc": {
                                          "start": {
                                            "line": 514,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 514,
                                            "column": 34
                                          }
                                        },
                                        "name": "angleDeltaToOX"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 22034,
                                        "end": 22051,
                                        "loc": {
                                          "start": {
                                            "line": 514,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 514,
                                            "column": 54
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 22034,
                                          "end": 22047,
                                          "loc": {
                                            "start": {
                                              "line": 514,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 514,
                                              "column": 50
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 22034,
                                            "end": 22039,
                                            "loc": {
                                              "start": {
                                                "line": 514,
                                                "column": 37
                                              },
                                              "end": {
                                                "line": 514,
                                                "column": 42
                                              }
                                            },
                                            "name": "delta"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22040,
                                            "end": 22047,
                                            "loc": {
                                              "start": {
                                                "line": 514,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 514,
                                                "column": 50
                                              }
                                            },
                                            "name": "angleTo"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 22048,
                                            "end": 22050,
                                            "loc": {
                                              "start": {
                                                "line": 514,
                                                "column": 51
                                              },
                                              "end": {
                                                "line": 514,
                                                "column": 53
                                              }
                                            },
                                            "name": "oX"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 22070,
                                  "end": 22157,
                                  "loc": {
                                    "start": {
                                      "line": 515,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 515,
                                      "column": 103
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 22070,
                                    "end": 22156,
                                    "loc": {
                                      "start": {
                                        "line": 515,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 515,
                                        "column": 102
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 22070,
                                      "end": 22084,
                                      "loc": {
                                        "start": {
                                          "line": 515,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 515,
                                          "column": 30
                                        }
                                      },
                                      "name": "angleDeltaToOX"
                                    },
                                    "right": {
                                      "type": "ConditionalExpression",
                                      "start": 22087,
                                      "end": 22156,
                                      "loc": {
                                        "start": {
                                          "line": 515,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 515,
                                          "column": 102
                                        }
                                      },
                                      "test": {
                                        "type": "BinaryExpression",
                                        "start": 22088,
                                        "end": 22103,
                                        "loc": {
                                          "start": {
                                            "line": 515,
                                            "column": 34
                                          },
                                          "end": {
                                            "line": 515,
                                            "column": 49
                                          }
                                        },
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 22088,
                                          "end": 22095,
                                          "loc": {
                                            "start": {
                                              "line": 515,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 515,
                                              "column": 41
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 22088,
                                            "end": 22093,
                                            "loc": {
                                              "start": {
                                                "line": 515,
                                                "column": 34
                                              },
                                              "end": {
                                                "line": 515,
                                                "column": 39
                                              }
                                            },
                                            "name": "delta"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22094,
                                            "end": 22095,
                                            "loc": {
                                              "start": {
                                                "line": 515,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 515,
                                                "column": 41
                                              }
                                            },
                                            "name": "y"
                                          },
                                          "computed": false
                                        },
                                        "operator": "<",
                                        "right": {
                                          "type": "UnaryExpression",
                                          "start": 22098,
                                          "end": 22103,
                                          "loc": {
                                            "start": {
                                              "line": 515,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 515,
                                              "column": 49
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Literal",
                                            "start": 22099,
                                            "end": 22103,
                                            "loc": {
                                              "start": {
                                                "line": 515,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 515,
                                                "column": 49
                                              }
                                            },
                                            "value": 0.000001,
                                            "rawValue": 0.000001,
                                            "raw": "1e-6"
                                          }
                                        },
                                        "parenthesizedExpression": true
                                      },
                                      "consequent": {
                                        "type": "BinaryExpression",
                                        "start": 22108,
                                        "end": 22138,
                                        "loc": {
                                          "start": {
                                            "line": 515,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 515,
                                            "column": 84
                                          }
                                        },
                                        "left": {
                                          "type": "BinaryExpression",
                                          "start": 22109,
                                          "end": 22120,
                                          "loc": {
                                            "start": {
                                              "line": 515,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 515,
                                              "column": 66
                                            }
                                          },
                                          "left": {
                                            "type": "Literal",
                                            "start": 22109,
                                            "end": 22110,
                                            "loc": {
                                              "start": {
                                                "line": 515,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 515,
                                                "column": 56
                                              }
                                            },
                                            "value": 2,
                                            "rawValue": 2,
                                            "raw": "2"
                                          },
                                          "operator": "*",
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 22113,
                                            "end": 22120,
                                            "loc": {
                                              "start": {
                                                "line": 515,
                                                "column": 59
                                              },
                                              "end": {
                                                "line": 515,
                                                "column": 66
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 22113,
                                              "end": 22117,
                                              "loc": {
                                                "start": {
                                                  "line": 515,
                                                  "column": 59
                                                },
                                                "end": {
                                                  "line": 515,
                                                  "column": 63
                                                }
                                              },
                                              "name": "Math"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 22118,
                                              "end": 22120,
                                              "loc": {
                                                "start": {
                                                  "line": 515,
                                                  "column": 64
                                                },
                                                "end": {
                                                  "line": 515,
                                                  "column": 66
                                                }
                                              },
                                              "name": "PI"
                                            },
                                            "computed": false
                                          },
                                          "parenthesizedExpression": true
                                        },
                                        "operator": "-",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 22124,
                                          "end": 22138,
                                          "loc": {
                                            "start": {
                                              "line": 515,
                                              "column": 70
                                            },
                                            "end": {
                                              "line": 515,
                                              "column": 84
                                            }
                                          },
                                          "name": "angleDeltaToOX"
                                        },
                                        "parenthesizedExpression": true
                                      },
                                      "alternate": {
                                        "type": "Identifier",
                                        "start": 22142,
                                        "end": 22156,
                                        "loc": {
                                          "start": {
                                            "line": 515,
                                            "column": 88
                                          },
                                          "end": {
                                            "line": 515,
                                            "column": 102
                                          }
                                        },
                                        "name": "angleDeltaToOX"
                                      }
                                    }
                                  }
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 22175,
                                  "end": 22189,
                                  "loc": {
                                    "start": {
                                      "line": 516,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 516,
                                      "column": 30
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 22179,
                                      "end": 22188,
                                      "loc": {
                                        "start": {
                                          "line": 516,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 516,
                                          "column": 29
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 22179,
                                        "end": 22183,
                                        "loc": {
                                          "start": {
                                            "line": 516,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 516,
                                            "column": 24
                                          }
                                        },
                                        "name": "axis"
                                      },
                                      "init": {
                                        "type": "Identifier",
                                        "start": 22186,
                                        "end": 22188,
                                        "loc": {
                                          "start": {
                                            "line": 516,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 516,
                                            "column": 29
                                          }
                                        },
                                        "name": "oX"
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 22207,
                                  "end": 22244,
                                  "loc": {
                                    "start": {
                                      "line": 517,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 517,
                                      "column": 53
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 22211,
                                      "end": 22243,
                                      "loc": {
                                        "start": {
                                          "line": 517,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 517,
                                          "column": 52
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 22211,
                                        "end": 22224,
                                        "loc": {
                                          "start": {
                                            "line": 517,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 517,
                                            "column": 33
                                          }
                                        },
                                        "name": "angleAxisToOX"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 22227,
                                        "end": 22243,
                                        "loc": {
                                          "start": {
                                            "line": 517,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 517,
                                            "column": 52
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 22227,
                                          "end": 22239,
                                          "loc": {
                                            "start": {
                                              "line": 517,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 517,
                                              "column": 48
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 22227,
                                            "end": 22231,
                                            "loc": {
                                              "start": {
                                                "line": 517,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 517,
                                                "column": 40
                                              }
                                            },
                                            "name": "axis"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22232,
                                            "end": 22239,
                                            "loc": {
                                              "start": {
                                                "line": 517,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 517,
                                                "column": 48
                                              }
                                            },
                                            "name": "angleTo"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 22240,
                                            "end": 22242,
                                            "loc": {
                                              "start": {
                                                "line": 517,
                                                "column": 49
                                              },
                                              "end": {
                                                "line": 517,
                                                "column": 51
                                              }
                                            },
                                            "name": "oX"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 22262,
                                  "end": 22345,
                                  "loc": {
                                    "start": {
                                      "line": 518,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 518,
                                      "column": 99
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 22262,
                                    "end": 22344,
                                    "loc": {
                                      "start": {
                                        "line": 518,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 518,
                                        "column": 98
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 22262,
                                      "end": 22275,
                                      "loc": {
                                        "start": {
                                          "line": 518,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 518,
                                          "column": 29
                                        }
                                      },
                                      "name": "angleAxisToOX"
                                    },
                                    "right": {
                                      "type": "ConditionalExpression",
                                      "start": 22278,
                                      "end": 22344,
                                      "loc": {
                                        "start": {
                                          "line": 518,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 518,
                                          "column": 98
                                        }
                                      },
                                      "test": {
                                        "type": "BinaryExpression",
                                        "start": 22279,
                                        "end": 22293,
                                        "loc": {
                                          "start": {
                                            "line": 518,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 518,
                                            "column": 47
                                          }
                                        },
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 22279,
                                          "end": 22285,
                                          "loc": {
                                            "start": {
                                              "line": 518,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 518,
                                              "column": 39
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 22279,
                                            "end": 22283,
                                            "loc": {
                                              "start": {
                                                "line": 518,
                                                "column": 33
                                              },
                                              "end": {
                                                "line": 518,
                                                "column": 37
                                              }
                                            },
                                            "name": "axis"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22284,
                                            "end": 22285,
                                            "loc": {
                                              "start": {
                                                "line": 518,
                                                "column": 38
                                              },
                                              "end": {
                                                "line": 518,
                                                "column": 39
                                              }
                                            },
                                            "name": "y"
                                          },
                                          "computed": false
                                        },
                                        "operator": "<",
                                        "right": {
                                          "type": "UnaryExpression",
                                          "start": 22288,
                                          "end": 22293,
                                          "loc": {
                                            "start": {
                                              "line": 518,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 518,
                                              "column": 47
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Literal",
                                            "start": 22289,
                                            "end": 22293,
                                            "loc": {
                                              "start": {
                                                "line": 518,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 518,
                                                "column": 47
                                              }
                                            },
                                            "value": 0.000001,
                                            "rawValue": 0.000001,
                                            "raw": "1e-6"
                                          }
                                        },
                                        "parenthesizedExpression": true
                                      },
                                      "consequent": {
                                        "type": "BinaryExpression",
                                        "start": 22298,
                                        "end": 22327,
                                        "loc": {
                                          "start": {
                                            "line": 518,
                                            "column": 52
                                          },
                                          "end": {
                                            "line": 518,
                                            "column": 81
                                          }
                                        },
                                        "left": {
                                          "type": "BinaryExpression",
                                          "start": 22299,
                                          "end": 22310,
                                          "loc": {
                                            "start": {
                                              "line": 518,
                                              "column": 53
                                            },
                                            "end": {
                                              "line": 518,
                                              "column": 64
                                            }
                                          },
                                          "left": {
                                            "type": "Literal",
                                            "start": 22299,
                                            "end": 22300,
                                            "loc": {
                                              "start": {
                                                "line": 518,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 518,
                                                "column": 54
                                              }
                                            },
                                            "value": 2,
                                            "rawValue": 2,
                                            "raw": "2"
                                          },
                                          "operator": "*",
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 22303,
                                            "end": 22310,
                                            "loc": {
                                              "start": {
                                                "line": 518,
                                                "column": 57
                                              },
                                              "end": {
                                                "line": 518,
                                                "column": 64
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 22303,
                                              "end": 22307,
                                              "loc": {
                                                "start": {
                                                  "line": 518,
                                                  "column": 57
                                                },
                                                "end": {
                                                  "line": 518,
                                                  "column": 61
                                                }
                                              },
                                              "name": "Math"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 22308,
                                              "end": 22310,
                                              "loc": {
                                                "start": {
                                                  "line": 518,
                                                  "column": 62
                                                },
                                                "end": {
                                                  "line": 518,
                                                  "column": 64
                                                }
                                              },
                                              "name": "PI"
                                            },
                                            "computed": false
                                          },
                                          "parenthesizedExpression": true
                                        },
                                        "operator": "-",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 22314,
                                          "end": 22327,
                                          "loc": {
                                            "start": {
                                              "line": 518,
                                              "column": 68
                                            },
                                            "end": {
                                              "line": 518,
                                              "column": 81
                                            }
                                          },
                                          "name": "angleAxisToOX"
                                        },
                                        "parenthesizedExpression": true
                                      },
                                      "alternate": {
                                        "type": "Identifier",
                                        "start": 22331,
                                        "end": 22344,
                                        "loc": {
                                          "start": {
                                            "line": 518,
                                            "column": 85
                                          },
                                          "end": {
                                            "line": 518,
                                            "column": 98
                                          }
                                        },
                                        "name": "angleAxisToOX"
                                      }
                                    }
                                  }
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 22365,
                                  "end": 22495,
                                  "loc": {
                                    "start": {
                                      "line": 520,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 520,
                                      "column": 146
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 22369,
                                      "end": 22494,
                                      "loc": {
                                        "start": {
                                          "line": 520,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 520,
                                          "column": 145
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 22369,
                                        "end": 22373,
                                        "loc": {
                                          "start": {
                                            "line": 520,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 520,
                                            "column": 24
                                          }
                                        },
                                        "name": "diff"
                                      },
                                      "init": {
                                        "type": "ConditionalExpression",
                                        "start": 22376,
                                        "end": 22494,
                                        "loc": {
                                          "start": {
                                            "line": 520,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 520,
                                            "column": 145
                                          }
                                        },
                                        "test": {
                                          "type": "BinaryExpression",
                                          "start": 22377,
                                          "end": 22407,
                                          "loc": {
                                            "start": {
                                              "line": 520,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 520,
                                              "column": 58
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 22377,
                                            "end": 22391,
                                            "loc": {
                                              "start": {
                                                "line": 520,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 520,
                                                "column": 42
                                              }
                                            },
                                            "name": "angleDeltaToOX"
                                          },
                                          "operator": ">",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 22394,
                                            "end": 22407,
                                            "loc": {
                                              "start": {
                                                "line": 520,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 520,
                                                "column": 58
                                              }
                                            },
                                            "name": "angleAxisToOX"
                                          },
                                          "parenthesizedExpression": true
                                        },
                                        "consequent": {
                                          "type": "BinaryExpression",
                                          "start": 22412,
                                          "end": 22442,
                                          "loc": {
                                            "start": {
                                              "line": 520,
                                              "column": 63
                                            },
                                            "end": {
                                              "line": 520,
                                              "column": 93
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 22412,
                                            "end": 22426,
                                            "loc": {
                                              "start": {
                                                "line": 520,
                                                "column": 63
                                              },
                                              "end": {
                                                "line": 520,
                                                "column": 77
                                              }
                                            },
                                            "name": "angleDeltaToOX"
                                          },
                                          "operator": "-",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 22429,
                                            "end": 22442,
                                            "loc": {
                                              "start": {
                                                "line": 520,
                                                "column": 80
                                              },
                                              "end": {
                                                "line": 520,
                                                "column": 93
                                              }
                                            },
                                            "name": "angleAxisToOX"
                                          },
                                          "parenthesizedExpression": true
                                        },
                                        "alternate": {
                                          "type": "BinaryExpression",
                                          "start": 22447,
                                          "end": 22493,
                                          "loc": {
                                            "start": {
                                              "line": 520,
                                              "column": 98
                                            },
                                            "end": {
                                              "line": 520,
                                              "column": 144
                                            }
                                          },
                                          "left": {
                                            "type": "BinaryExpression",
                                            "start": 22447,
                                            "end": 22477,
                                            "loc": {
                                              "start": {
                                                "line": 520,
                                                "column": 98
                                              },
                                              "end": {
                                                "line": 520,
                                                "column": 128
                                              }
                                            },
                                            "left": {
                                              "type": "BinaryExpression",
                                              "start": 22448,
                                              "end": 22459,
                                              "loc": {
                                                "start": {
                                                  "line": 520,
                                                  "column": 99
                                                },
                                                "end": {
                                                  "line": 520,
                                                  "column": 110
                                                }
                                              },
                                              "left": {
                                                "type": "Literal",
                                                "start": 22448,
                                                "end": 22449,
                                                "loc": {
                                                  "start": {
                                                    "line": 520,
                                                    "column": 99
                                                  },
                                                  "end": {
                                                    "line": 520,
                                                    "column": 100
                                                  }
                                                },
                                                "value": 2,
                                                "rawValue": 2,
                                                "raw": "2"
                                              },
                                              "operator": "*",
                                              "right": {
                                                "type": "MemberExpression",
                                                "start": 22452,
                                                "end": 22459,
                                                "loc": {
                                                  "start": {
                                                    "line": 520,
                                                    "column": 103
                                                  },
                                                  "end": {
                                                    "line": 520,
                                                    "column": 110
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 22452,
                                                  "end": 22456,
                                                  "loc": {
                                                    "start": {
                                                      "line": 520,
                                                      "column": 103
                                                    },
                                                    "end": {
                                                      "line": 520,
                                                      "column": 107
                                                    }
                                                  },
                                                  "name": "Math"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 22457,
                                                  "end": 22459,
                                                  "loc": {
                                                    "start": {
                                                      "line": 520,
                                                      "column": 108
                                                    },
                                                    "end": {
                                                      "line": 520,
                                                      "column": 110
                                                    }
                                                  },
                                                  "name": "PI"
                                                },
                                                "computed": false
                                              },
                                              "parenthesizedExpression": true
                                            },
                                            "operator": "+",
                                            "right": {
                                              "type": "Identifier",
                                              "start": 22463,
                                              "end": 22477,
                                              "loc": {
                                                "start": {
                                                  "line": 520,
                                                  "column": 114
                                                },
                                                "end": {
                                                  "line": 520,
                                                  "column": 128
                                                }
                                              },
                                              "name": "angleDeltaToOX"
                                            }
                                          },
                                          "operator": "-",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 22480,
                                            "end": 22493,
                                            "loc": {
                                              "start": {
                                                "line": 520,
                                                "column": 131
                                              },
                                              "end": {
                                                "line": 520,
                                                "column": 144
                                              }
                                            },
                                            "name": "angleAxisToOX"
                                          },
                                          "parenthesizedExpression": true
                                        }
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 22513,
                                  "end": 22578,
                                  "loc": {
                                    "start": {
                                      "line": 521,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 521,
                                      "column": 81
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 22517,
                                      "end": 22577,
                                      "loc": {
                                        "start": {
                                          "line": 521,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 521,
                                          "column": 80
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 22517,
                                        "end": 22522,
                                        "loc": {
                                          "start": {
                                            "line": 521,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 521,
                                            "column": 25
                                          }
                                        },
                                        "name": "round"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 22525,
                                        "end": 22577,
                                        "loc": {
                                          "start": {
                                            "line": 521,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 521,
                                            "column": 80
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 22525,
                                          "end": 22535,
                                          "loc": {
                                            "start": {
                                              "line": 521,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 521,
                                              "column": 38
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 22525,
                                            "end": 22529,
                                            "loc": {
                                              "start": {
                                                "line": 521,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 521,
                                                "column": 32
                                              }
                                            },
                                            "name": "Math"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22530,
                                            "end": 22535,
                                            "loc": {
                                              "start": {
                                                "line": 521,
                                                "column": 33
                                              },
                                              "end": {
                                                "line": 521,
                                                "column": 38
                                              }
                                            },
                                            "name": "round"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "BinaryExpression",
                                            "start": 22536,
                                            "end": 22576,
                                            "loc": {
                                              "start": {
                                                "line": 521,
                                                "column": 39
                                              },
                                              "end": {
                                                "line": 521,
                                                "column": 79
                                              }
                                            },
                                            "left": {
                                              "type": "BinaryExpression",
                                              "start": 22536,
                                              "end": 22560,
                                              "loc": {
                                                "start": {
                                                  "line": 521,
                                                  "column": 39
                                                },
                                                "end": {
                                                  "line": 521,
                                                  "column": 63
                                                }
                                              },
                                              "left": {
                                                "type": "Identifier",
                                                "start": 22536,
                                                "end": 22540,
                                                "loc": {
                                                  "start": {
                                                    "line": 521,
                                                    "column": 39
                                                  },
                                                  "end": {
                                                    "line": 521,
                                                    "column": 43
                                                  }
                                                },
                                                "name": "diff"
                                              },
                                              "operator": "*",
                                              "right": {
                                                "type": "Identifier",
                                                "start": 22543,
                                                "end": 22560,
                                                "loc": {
                                                  "start": {
                                                    "line": 521,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 521,
                                                    "column": 63
                                                  }
                                                },
                                                "name": "nbShiftDirections"
                                              }
                                            },
                                            "operator": "/",
                                            "right": {
                                              "type": "BinaryExpression",
                                              "start": 22564,
                                              "end": 22575,
                                              "loc": {
                                                "start": {
                                                  "line": 521,
                                                  "column": 67
                                                },
                                                "end": {
                                                  "line": 521,
                                                  "column": 78
                                                }
                                              },
                                              "left": {
                                                "type": "Literal",
                                                "start": 22564,
                                                "end": 22565,
                                                "loc": {
                                                  "start": {
                                                    "line": 521,
                                                    "column": 67
                                                  },
                                                  "end": {
                                                    "line": 521,
                                                    "column": 68
                                                  }
                                                },
                                                "value": 2,
                                                "rawValue": 2,
                                                "raw": "2"
                                              },
                                              "operator": "*",
                                              "right": {
                                                "type": "MemberExpression",
                                                "start": 22568,
                                                "end": 22575,
                                                "loc": {
                                                  "start": {
                                                    "line": 521,
                                                    "column": 71
                                                  },
                                                  "end": {
                                                    "line": 521,
                                                    "column": 78
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 22568,
                                                  "end": 22572,
                                                  "loc": {
                                                    "start": {
                                                      "line": 521,
                                                      "column": 71
                                                    },
                                                    "end": {
                                                      "line": 521,
                                                      "column": 75
                                                    }
                                                  },
                                                  "name": "Math"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 22573,
                                                  "end": 22575,
                                                  "loc": {
                                                    "start": {
                                                      "line": 521,
                                                      "column": 76
                                                    },
                                                    "end": {
                                                      "line": 521,
                                                      "column": 78
                                                    }
                                                  },
                                                  "name": "PI"
                                                },
                                                "computed": false
                                              },
                                              "parenthesizedExpression": true
                                            }
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 22596,
                                  "end": 22650,
                                  "loc": {
                                    "start": {
                                      "line": 522,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 522,
                                      "column": 70
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 22600,
                                      "end": 22649,
                                      "loc": {
                                        "start": {
                                          "line": 522,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 522,
                                          "column": 69
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 22600,
                                        "end": 22605,
                                        "loc": {
                                          "start": {
                                            "line": 522,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 522,
                                            "column": 25
                                          }
                                        },
                                        "name": "angle"
                                      },
                                      "init": {
                                        "type": "BinaryExpression",
                                        "start": 22608,
                                        "end": 22649,
                                        "loc": {
                                          "start": {
                                            "line": 522,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 522,
                                            "column": 69
                                          }
                                        },
                                        "left": {
                                          "type": "BinaryExpression",
                                          "start": 22608,
                                          "end": 22629,
                                          "loc": {
                                            "start": {
                                              "line": 522,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 522,
                                              "column": 49
                                            }
                                          },
                                          "left": {
                                            "type": "BinaryExpression",
                                            "start": 22609,
                                            "end": 22620,
                                            "loc": {
                                              "start": {
                                                "line": 522,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 522,
                                                "column": 40
                                              }
                                            },
                                            "left": {
                                              "type": "Literal",
                                              "start": 22609,
                                              "end": 22610,
                                              "loc": {
                                                "start": {
                                                  "line": 522,
                                                  "column": 29
                                                },
                                                "end": {
                                                  "line": 522,
                                                  "column": 30
                                                }
                                              },
                                              "value": 2,
                                              "rawValue": 2,
                                              "raw": "2"
                                            },
                                            "operator": "*",
                                            "right": {
                                              "type": "MemberExpression",
                                              "start": 22613,
                                              "end": 22620,
                                              "loc": {
                                                "start": {
                                                  "line": 522,
                                                  "column": 33
                                                },
                                                "end": {
                                                  "line": 522,
                                                  "column": 40
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 22613,
                                                "end": 22617,
                                                "loc": {
                                                  "start": {
                                                    "line": 522,
                                                    "column": 33
                                                  },
                                                  "end": {
                                                    "line": 522,
                                                    "column": 37
                                                  }
                                                },
                                                "name": "Math"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 22618,
                                                "end": 22620,
                                                "loc": {
                                                  "start": {
                                                    "line": 522,
                                                    "column": 38
                                                  },
                                                  "end": {
                                                    "line": 522,
                                                    "column": 40
                                                  }
                                                },
                                                "name": "PI"
                                              },
                                              "computed": false
                                            },
                                            "parenthesizedExpression": true
                                          },
                                          "operator": "*",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 22624,
                                            "end": 22629,
                                            "loc": {
                                              "start": {
                                                "line": 522,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 522,
                                                "column": 49
                                              }
                                            },
                                            "name": "round"
                                          }
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 22632,
                                          "end": 22649,
                                          "loc": {
                                            "start": {
                                              "line": 522,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 522,
                                              "column": 69
                                            }
                                          },
                                          "name": "nbShiftDirections"
                                        }
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 22668,
                                  "end": 22691,
                                  "loc": {
                                    "start": {
                                      "line": 523,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 523,
                                      "column": 39
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 22668,
                                    "end": 22690,
                                    "loc": {
                                      "start": {
                                        "line": 523,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 523,
                                        "column": 38
                                      }
                                    },
                                    "operator": "+=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 22668,
                                      "end": 22673,
                                      "loc": {
                                        "start": {
                                          "line": 523,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 523,
                                          "column": 21
                                        }
                                      },
                                      "name": "angle"
                                    },
                                    "right": {
                                      "type": "Identifier",
                                      "start": 22677,
                                      "end": 22690,
                                      "loc": {
                                        "start": {
                                          "line": 523,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 523,
                                          "column": 38
                                        }
                                      },
                                      "name": "angleAxisToOX"
                                    }
                                  }
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 22709,
                                  "end": 22776,
                                  "loc": {
                                    "start": {
                                      "line": 524,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 524,
                                      "column": 83
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 22713,
                                      "end": 22775,
                                      "loc": {
                                        "start": {
                                          "line": 524,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 524,
                                          "column": 82
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 22713,
                                        "end": 22716,
                                        "loc": {
                                          "start": {
                                            "line": 524,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 524,
                                            "column": 23
                                          }
                                        },
                                        "name": "dir"
                                      },
                                      "init": {
                                        "type": "NewExpression",
                                        "start": 22719,
                                        "end": 22775,
                                        "loc": {
                                          "start": {
                                            "line": 524,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 524,
                                            "column": 82
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 22723,
                                          "end": 22736,
                                          "loc": {
                                            "start": {
                                              "line": 524,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 524,
                                              "column": 43
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 22723,
                                            "end": 22728,
                                            "loc": {
                                              "start": {
                                                "line": 524,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 524,
                                                "column": 35
                                              }
                                            },
                                            "name": "THREE"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22729,
                                            "end": 22736,
                                            "loc": {
                                              "start": {
                                                "line": 524,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 524,
                                                "column": 43
                                              }
                                            },
                                            "name": "Vector3"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "CallExpression",
                                            "start": 22737,
                                            "end": 22752,
                                            "loc": {
                                              "start": {
                                                "line": 524,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 524,
                                                "column": 59
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 22737,
                                              "end": 22745,
                                              "loc": {
                                                "start": {
                                                  "line": 524,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 524,
                                                  "column": 52
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 22737,
                                                "end": 22741,
                                                "loc": {
                                                  "start": {
                                                    "line": 524,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 524,
                                                    "column": 48
                                                  }
                                                },
                                                "name": "Math"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 22742,
                                                "end": 22745,
                                                "loc": {
                                                  "start": {
                                                    "line": 524,
                                                    "column": 49
                                                  },
                                                  "end": {
                                                    "line": 524,
                                                    "column": 52
                                                  }
                                                },
                                                "name": "cos"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 22746,
                                                "end": 22751,
                                                "loc": {
                                                  "start": {
                                                    "line": 524,
                                                    "column": 53
                                                  },
                                                  "end": {
                                                    "line": 524,
                                                    "column": 58
                                                  }
                                                },
                                                "name": "angle"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "CallExpression",
                                            "start": 22754,
                                            "end": 22769,
                                            "loc": {
                                              "start": {
                                                "line": 524,
                                                "column": 61
                                              },
                                              "end": {
                                                "line": 524,
                                                "column": 76
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 22754,
                                              "end": 22762,
                                              "loc": {
                                                "start": {
                                                  "line": 524,
                                                  "column": 61
                                                },
                                                "end": {
                                                  "line": 524,
                                                  "column": 69
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 22754,
                                                "end": 22758,
                                                "loc": {
                                                  "start": {
                                                    "line": 524,
                                                    "column": 61
                                                  },
                                                  "end": {
                                                    "line": 524,
                                                    "column": 65
                                                  }
                                                },
                                                "name": "Math"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 22759,
                                                "end": 22762,
                                                "loc": {
                                                  "start": {
                                                    "line": 524,
                                                    "column": 66
                                                  },
                                                  "end": {
                                                    "line": 524,
                                                    "column": 69
                                                  }
                                                },
                                                "name": "sin"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 22763,
                                                "end": 22768,
                                                "loc": {
                                                  "start": {
                                                    "line": 524,
                                                    "column": 70
                                                  },
                                                  "end": {
                                                    "line": 524,
                                                    "column": 75
                                                  }
                                                },
                                                "name": "angle"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 22771,
                                            "end": 22774,
                                            "loc": {
                                              "start": {
                                                "line": 524,
                                                "column": 78
                                              },
                                              "end": {
                                                "line": 524,
                                                "column": 81
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0.0"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 22794,
                                  "end": 22829,
                                  "loc": {
                                    "start": {
                                      "line": 525,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 525,
                                      "column": 51
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 22794,
                                    "end": 22828,
                                    "loc": {
                                      "start": {
                                        "line": 525,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 525,
                                        "column": 50
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 22794,
                                      "end": 22812,
                                      "loc": {
                                        "start": {
                                          "line": 525,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 525,
                                          "column": 34
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 22794,
                                        "end": 22797,
                                        "loc": {
                                          "start": {
                                            "line": 525,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 525,
                                            "column": 19
                                          }
                                        },
                                        "name": "dir"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 22798,
                                        "end": 22812,
                                        "loc": {
                                          "start": {
                                            "line": 525,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 525,
                                            "column": 34
                                          }
                                        },
                                        "name": "multiplyScalar"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "CallExpression",
                                        "start": 22813,
                                        "end": 22827,
                                        "loc": {
                                          "start": {
                                            "line": 525,
                                            "column": 35
                                          },
                                          "end": {
                                            "line": 525,
                                            "column": 49
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 22813,
                                          "end": 22820,
                                          "loc": {
                                            "start": {
                                              "line": 525,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 525,
                                              "column": 42
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 22813,
                                            "end": 22816,
                                            "loc": {
                                              "start": {
                                                "line": 525,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 525,
                                                "column": 38
                                              }
                                            },
                                            "name": "dir"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22817,
                                            "end": 22820,
                                            "loc": {
                                              "start": {
                                                "line": 525,
                                                "column": 39
                                              },
                                              "end": {
                                                "line": 525,
                                                "column": 42
                                              }
                                            },
                                            "name": "dot"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 22821,
                                            "end": 22826,
                                            "loc": {
                                              "start": {
                                                "line": 525,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 525,
                                                "column": 48
                                              }
                                            },
                                            "name": "delta"
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 22847,
                                  "end": 22888,
                                  "loc": {
                                    "start": {
                                      "line": 526,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 526,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 22847,
                                    "end": 22887,
                                    "loc": {
                                      "start": {
                                        "line": 526,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 526,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 22847,
                                      "end": 22866,
                                      "loc": {
                                        "start": {
                                          "line": 526,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 526,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 22847,
                                        "end": 22855,
                                        "loc": {
                                          "start": {
                                            "line": 526,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 526,
                                            "column": 24
                                          }
                                        },
                                        "name": "toReturn"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 22856,
                                        "end": 22866,
                                        "loc": {
                                          "start": {
                                            "line": 526,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 526,
                                            "column": 35
                                          }
                                        },
                                        "name": "addVectors"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 22867,
                                        "end": 22881,
                                        "loc": {
                                          "start": {
                                            "line": 526,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 526,
                                            "column": 50
                                          }
                                        },
                                        "name": "neighbourPoint"
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 22883,
                                        "end": 22886,
                                        "loc": {
                                          "start": {
                                            "line": 526,
                                            "column": 52
                                          },
                                          "end": {
                                            "line": 526,
                                            "column": 55
                                          }
                                        },
                                        "name": "dir"
                                      }
                                    ]
                                  }
                                }
                              ]
                            },
                            "alternate": null
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 22919,
                            "end": 22935,
                            "loc": {
                              "start": {
                                "line": 529,
                                "column": 12
                              },
                              "end": {
                                "line": 529,
                                "column": 28
                              }
                            },
                            "argument": {
                              "type": "Identifier",
                              "start": 22926,
                              "end": 22934,
                              "loc": {
                                "start": {
                                  "line": 529,
                                  "column": 19
                                },
                                "end": {
                                  "line": 529,
                                  "column": 27
                                }
                              },
                              "name": "toReturn"
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 22958,
                      "end": 23072,
                      "loc": {
                        "start": {
                          "line": 532,
                          "column": 8
                        },
                        "end": {
                          "line": 532,
                          "column": 122
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 22962,
                          "end": 23071,
                          "loc": {
                            "start": {
                              "line": 532,
                              "column": 12
                            },
                            "end": {
                              "line": 532,
                              "column": 121
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 22962,
                            "end": 22979,
                            "loc": {
                              "start": {
                                "line": 532,
                                "column": 12
                              },
                              "end": {
                                "line": 532,
                                "column": 29
                              }
                            },
                            "name": "nbShiftDirections"
                          },
                          "init": {
                            "type": "ConditionalExpression",
                            "start": 22982,
                            "end": 23071,
                            "loc": {
                              "start": {
                                "line": 532,
                                "column": 32
                              },
                              "end": {
                                "line": 532,
                                "column": 121
                              }
                            },
                            "test": {
                              "type": "MemberExpression",
                              "start": 22982,
                              "end": 23016,
                              "loc": {
                                "start": {
                                  "line": 532,
                                  "column": 32
                                },
                                "end": {
                                  "line": 532,
                                  "column": 66
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 22982,
                                "end": 23007,
                                "loc": {
                                  "start": {
                                    "line": 532,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 532,
                                    "column": 57
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 22982,
                                  "end": 22995,
                                  "loc": {
                                    "start": {
                                      "line": 532,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 532,
                                      "column": 45
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 22982,
                                    "end": 22990,
                                    "loc": {
                                      "start": {
                                        "line": 532,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 532,
                                        "column": 40
                                      }
                                    },
                                    "name": "sketcher"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 22991,
                                    "end": 22995,
                                    "loc": {
                                      "start": {
                                        "line": 532,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 532,
                                        "column": 45
                                      }
                                    },
                                    "name": "view"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 22996,
                                  "end": 23007,
                                  "loc": {
                                    "start": {
                                      "line": 532,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 532,
                                      "column": 57
                                    }
                                  },
                                  "name": "interaction"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 23008,
                                "end": 23016,
                                "loc": {
                                  "start": {
                                    "line": 532,
                                    "column": 58
                                  },
                                  "end": {
                                    "line": 532,
                                    "column": 66
                                  }
                                },
                                "name": "shiftKey"
                              },
                              "computed": false
                            },
                            "consequent": {
                              "type": "MemberExpression",
                              "start": 23019,
                              "end": 23067,
                              "loc": {
                                "start": {
                                  "line": 532,
                                  "column": 69
                                },
                                "end": {
                                  "line": 532,
                                  "column": 117
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 23019,
                                "end": 23051,
                                "loc": {
                                  "start": {
                                    "line": 532,
                                    "column": 69
                                  },
                                  "end": {
                                    "line": 532,
                                    "column": 101
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 23019,
                                  "end": 23027,
                                  "loc": {
                                    "start": {
                                      "line": 532,
                                      "column": 69
                                    },
                                    "end": {
                                      "line": 532,
                                      "column": 77
                                    }
                                  },
                                  "name": "sketcher"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 23028,
                                  "end": 23051,
                                  "loc": {
                                    "start": {
                                      "line": 532,
                                      "column": 78
                                    },
                                    "end": {
                                      "line": 532,
                                      "column": 101
                                    }
                                  },
                                  "name": "__sketchControlsHandler"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 23052,
                                "end": 23067,
                                "loc": {
                                  "start": {
                                    "line": 532,
                                    "column": 102
                                  },
                                  "end": {
                                    "line": 532,
                                    "column": 117
                                  }
                                },
                                "name": "shiftDirections"
                              },
                              "computed": false
                            },
                            "alternate": {
                              "type": "Literal",
                              "start": 23070,
                              "end": 23071,
                              "loc": {
                                "start": {
                                  "line": 532,
                                  "column": 120
                                },
                                "end": {
                                  "line": 532,
                                  "column": 121
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 23082,
                      "end": 23160,
                      "loc": {
                        "start": {
                          "line": 533,
                          "column": 8
                        },
                        "end": {
                          "line": 533,
                          "column": 86
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 23086,
                        "end": 23133,
                        "loc": {
                          "start": {
                            "line": 533,
                            "column": 12
                          },
                          "end": {
                            "line": 533,
                            "column": 59
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 23086,
                          "end": 23103,
                          "loc": {
                            "start": {
                              "line": 533,
                              "column": 12
                            },
                            "end": {
                              "line": 533,
                              "column": 29
                            }
                          },
                          "name": "nbShiftDirections"
                        },
                        "operator": "&&",
                        "right": {
                          "type": "BinaryExpression",
                          "start": 23107,
                          "end": 23133,
                          "loc": {
                            "start": {
                              "line": 533,
                              "column": 33
                            },
                            "end": {
                              "line": 533,
                              "column": 59
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 23107,
                            "end": 23117,
                            "loc": {
                              "start": {
                                "line": 533,
                                "column": 33
                              },
                              "end": {
                                "line": 533,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 23107,
                              "end": 23110,
                              "loc": {
                                "start": {
                                  "line": 533,
                                  "column": 33
                                },
                                "end": {
                                  "line": 533,
                                  "column": 36
                                }
                              },
                              "name": "obj"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 23111,
                              "end": 23117,
                              "loc": {
                                "start": {
                                  "line": 533,
                                  "column": 37
                                },
                                "end": {
                                  "line": 533,
                                  "column": 43
                                }
                              },
                              "name": "parent"
                            },
                            "computed": false
                          },
                          "operator": "instanceof",
                          "right": {
                            "type": "Identifier",
                            "start": 23129,
                            "end": 23133,
                            "loc": {
                              "start": {
                                "line": 533,
                                "column": 55
                              },
                              "end": {
                                "line": 533,
                                "column": 59
                              }
                            },
                            "name": "Line"
                          }
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 23135,
                        "end": 23160,
                        "loc": {
                          "start": {
                            "line": 533,
                            "column": 61
                          },
                          "end": {
                            "line": 533,
                            "column": 86
                          }
                        },
                        "argument": {
                          "type": "CallExpression",
                          "start": 23142,
                          "end": 23159,
                          "loc": {
                            "start": {
                              "line": 533,
                              "column": 68
                            },
                            "end": {
                              "line": 533,
                              "column": 85
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 23142,
                            "end": 23157,
                            "loc": {
                              "start": {
                                "line": 533,
                                "column": 68
                              },
                              "end": {
                                "line": 533,
                                "column": 83
                              }
                            },
                            "name": "snapToDirection"
                          },
                          "arguments": []
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 23172,
                      "end": 23209,
                      "loc": {
                        "start": {
                          "line": 535,
                          "column": 8
                        },
                        "end": {
                          "line": 535,
                          "column": 45
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 23176,
                          "end": 23208,
                          "loc": {
                            "start": {
                              "line": 535,
                              "column": 12
                            },
                            "end": {
                              "line": 535,
                              "column": 44
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 23176,
                            "end": 23184,
                            "loc": {
                              "start": {
                                "line": 535,
                                "column": 12
                              },
                              "end": {
                                "line": 535,
                                "column": 20
                              }
                            },
                            "name": "toReturn"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 23187,
                            "end": 23208,
                            "loc": {
                              "start": {
                                "line": 535,
                                "column": 23
                              },
                              "end": {
                                "line": 535,
                                "column": 44
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 23187,
                              "end": 23206,
                              "loc": {
                                "start": {
                                  "line": 535,
                                  "column": 23
                                },
                                "end": {
                                  "line": 535,
                                  "column": 42
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 23187,
                                "end": 23200,
                                "loc": {
                                  "start": {
                                    "line": 535,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 535,
                                    "column": 36
                                  }
                                },
                                "name": "mousePosition"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 23201,
                                "end": 23206,
                                "loc": {
                                  "start": {
                                    "line": 535,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 535,
                                    "column": 42
                                  }
                                },
                                "name": "clone"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 23221,
                      "end": 23243,
                      "loc": {
                        "start": {
                          "line": 537,
                          "column": 8
                        },
                        "end": {
                          "line": 537,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 23225,
                          "end": 23242,
                          "loc": {
                            "start": {
                              "line": 537,
                              "column": 12
                            },
                            "end": {
                              "line": 537,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 23225,
                            "end": 23237,
                            "loc": {
                              "start": {
                                "line": 537,
                                "column": 12
                              },
                              "end": {
                                "line": 537,
                                "column": 24
                              }
                            },
                            "name": "pointsToSnap"
                          },
                          "init": {
                            "type": "ArrayExpression",
                            "start": 23240,
                            "end": 23242,
                            "loc": {
                              "start": {
                                "line": 537,
                                "column": 27
                              },
                              "end": {
                                "line": 537,
                                "column": 29
                              }
                            },
                            "elements": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 23253,
                      "end": 23478,
                      "loc": {
                        "start": {
                          "line": 538,
                          "column": 8
                        },
                        "end": {
                          "line": 542,
                          "column": 115
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 23257,
                        "end": 23278,
                        "loc": {
                          "start": {
                            "line": 538,
                            "column": 12
                          },
                          "end": {
                            "line": 538,
                            "column": 33
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 23257,
                          "end": 23260,
                          "loc": {
                            "start": {
                              "line": 538,
                              "column": 12
                            },
                            "end": {
                              "line": 538,
                              "column": 15
                            }
                          },
                          "name": "obj"
                        },
                        "operator": "instanceof",
                        "right": {
                          "type": "Identifier",
                          "start": 23273,
                          "end": 23278,
                          "loc": {
                            "start": {
                              "line": 538,
                              "column": 28
                            },
                            "end": {
                              "line": 538,
                              "column": 33
                            }
                          },
                          "name": "Point"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 23293,
                        "end": 23314,
                        "loc": {
                          "start": {
                            "line": 539,
                            "column": 12
                          },
                          "end": {
                            "line": 539,
                            "column": 33
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 23293,
                          "end": 23313,
                          "loc": {
                            "start": {
                              "line": 539,
                              "column": 12
                            },
                            "end": {
                              "line": 539,
                              "column": 32
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 23293,
                            "end": 23305,
                            "loc": {
                              "start": {
                                "line": 539,
                                "column": 12
                              },
                              "end": {
                                "line": 539,
                                "column": 24
                              }
                            },
                            "name": "pointsToSnap"
                          },
                          "right": {
                            "type": "ArrayExpression",
                            "start": 23308,
                            "end": 23313,
                            "loc": {
                              "start": {
                                "line": 539,
                                "column": 27
                              },
                              "end": {
                                "line": 539,
                                "column": 32
                              }
                            },
                            "elements": [
                              {
                                "type": "Identifier",
                                "start": 23309,
                                "end": 23312,
                                "loc": {
                                  "start": {
                                    "line": 539,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 539,
                                    "column": 31
                                  }
                                },
                                "name": "obj"
                              }
                            ]
                          }
                        }
                      },
                      "alternate": {
                        "type": "ExpressionStatement",
                        "start": 23375,
                        "end": 23478,
                        "loc": {
                          "start": {
                            "line": 542,
                            "column": 12
                          },
                          "end": {
                            "line": 542,
                            "column": 115
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 23375,
                          "end": 23477,
                          "loc": {
                            "start": {
                              "line": 542,
                              "column": 12
                            },
                            "end": {
                              "line": 542,
                              "column": 114
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 23375,
                            "end": 23404,
                            "loc": {
                              "start": {
                                "line": 542,
                                "column": 12
                              },
                              "end": {
                                "line": 542,
                                "column": 41
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 23375,
                              "end": 23381,
                              "loc": {
                                "start": {
                                  "line": 542,
                                  "column": 12
                                },
                                "end": {
                                  "line": 542,
                                  "column": 18
                                }
                              },
                              "name": "Sketch",
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 23382,
                              "end": 23404,
                              "loc": {
                                "start": {
                                  "line": 542,
                                  "column": 19
                                },
                                "end": {
                                  "line": 542,
                                  "column": 41
                                }
                              },
                              "name": "ForObjectsWithChildren"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 23405,
                              "end": 23408,
                              "loc": {
                                "start": {
                                  "line": 542,
                                  "column": 42
                                },
                                "end": {
                                  "line": 542,
                                  "column": 45
                                }
                              },
                              "name": "obj"
                            },
                            {
                              "type": "FunctionExpression",
                              "start": 23410,
                              "end": 23476,
                              "loc": {
                                "start": {
                                  "line": 542,
                                  "column": 47
                                },
                                "end": {
                                  "line": 542,
                                  "column": 113
                                }
                              },
                              "id": null,
                              "generator": false,
                              "expression": false,
                              "async": false,
                              "params": [
                                {
                                  "type": "Identifier",
                                  "start": 23420,
                                  "end": 23423,
                                  "loc": {
                                    "start": {
                                      "line": 542,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 542,
                                      "column": 60
                                    }
                                  },
                                  "name": "arg"
                                }
                              ],
                              "body": {
                                "type": "BlockStatement",
                                "start": 23425,
                                "end": 23476,
                                "loc": {
                                  "start": {
                                    "line": 542,
                                    "column": 62
                                  },
                                  "end": {
                                    "line": 542,
                                    "column": 113
                                  }
                                },
                                "body": [
                                  {
                                    "type": "IfStatement",
                                    "start": 23427,
                                    "end": 23475,
                                    "loc": {
                                      "start": {
                                        "line": 542,
                                        "column": 64
                                      },
                                      "end": {
                                        "line": 542,
                                        "column": 112
                                      }
                                    },
                                    "test": {
                                      "type": "BinaryExpression",
                                      "start": 23430,
                                      "end": 23450,
                                      "loc": {
                                        "start": {
                                          "line": 542,
                                          "column": 67
                                        },
                                        "end": {
                                          "line": 542,
                                          "column": 87
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 23430,
                                        "end": 23433,
                                        "loc": {
                                          "start": {
                                            "line": 542,
                                            "column": 67
                                          },
                                          "end": {
                                            "line": 542,
                                            "column": 70
                                          }
                                        },
                                        "name": "arg"
                                      },
                                      "operator": "instanceof",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 23445,
                                        "end": 23450,
                                        "loc": {
                                          "start": {
                                            "line": 542,
                                            "column": 82
                                          },
                                          "end": {
                                            "line": 542,
                                            "column": 87
                                          }
                                        },
                                        "name": "Point"
                                      }
                                    },
                                    "consequent": {
                                      "type": "ExpressionStatement",
                                      "start": 23452,
                                      "end": 23475,
                                      "loc": {
                                        "start": {
                                          "line": 542,
                                          "column": 89
                                        },
                                        "end": {
                                          "line": 542,
                                          "column": 112
                                        }
                                      },
                                      "expression": {
                                        "type": "CallExpression",
                                        "start": 23452,
                                        "end": 23474,
                                        "loc": {
                                          "start": {
                                            "line": 542,
                                            "column": 89
                                          },
                                          "end": {
                                            "line": 542,
                                            "column": 111
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 23452,
                                          "end": 23469,
                                          "loc": {
                                            "start": {
                                              "line": 542,
                                              "column": 89
                                            },
                                            "end": {
                                              "line": 542,
                                              "column": 106
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 23452,
                                            "end": 23464,
                                            "loc": {
                                              "start": {
                                                "line": 542,
                                                "column": 89
                                              },
                                              "end": {
                                                "line": 542,
                                                "column": 101
                                              }
                                            },
                                            "name": "pointsToSnap"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 23465,
                                            "end": 23469,
                                            "loc": {
                                              "start": {
                                                "line": 542,
                                                "column": 102
                                              },
                                              "end": {
                                                "line": 542,
                                                "column": 106
                                              }
                                            },
                                            "name": "push"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 23470,
                                            "end": 23473,
                                            "loc": {
                                              "start": {
                                                "line": 542,
                                                "column": 107
                                              },
                                              "end": {
                                                "line": 542,
                                                "column": 110
                                              }
                                            },
                                            "name": "arg"
                                          }
                                        ]
                                      }
                                    },
                                    "alternate": null
                                  }
                                ]
                              }
                            }
                          ],
                          "leadingComments": null
                        },
                        "leadingComments": [
                          {
                            "type": "CommentLine",
                            "value": "/return toReturn;",
                            "start": 23342,
                            "end": 23361,
                            "loc": {
                              "start": {
                                "line": 541,
                                "column": 12
                              },
                              "end": {
                                "line": 541,
                                "column": 31
                              }
                            },
                            "range": [
                              23342,
                              23361
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 23490,
                      "end": 23546,
                      "loc": {
                        "start": {
                          "line": 544,
                          "column": 8
                        },
                        "end": {
                          "line": 544,
                          "column": 64
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 23494,
                          "end": 23545,
                          "loc": {
                            "start": {
                              "line": 544,
                              "column": 12
                            },
                            "end": {
                              "line": 544,
                              "column": 63
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 23494,
                            "end": 23518,
                            "loc": {
                              "start": {
                                "line": 544,
                                "column": 12
                              },
                              "end": {
                                "line": 544,
                                "column": 36
                              }
                            },
                            "name": "fromMousePositionToPoint"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 23521,
                            "end": 23545,
                            "loc": {
                              "start": {
                                "line": 544,
                                "column": 39
                              },
                              "end": {
                                "line": 544,
                                "column": 63
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 23525,
                              "end": 23538,
                              "loc": {
                                "start": {
                                  "line": 544,
                                  "column": 43
                                },
                                "end": {
                                  "line": 544,
                                  "column": 56
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 23525,
                                "end": 23530,
                                "loc": {
                                  "start": {
                                    "line": 544,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 544,
                                    "column": 48
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 23531,
                                "end": 23538,
                                "loc": {
                                  "start": {
                                    "line": 544,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 544,
                                    "column": 56
                                  }
                                },
                                "name": "Vector3"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Literal",
                                "start": 23539,
                                "end": 23540,
                                "loc": {
                                  "start": {
                                    "line": 544,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 544,
                                    "column": 58
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              {
                                "type": "Literal",
                                "start": 23541,
                                "end": 23542,
                                "loc": {
                                  "start": {
                                    "line": 544,
                                    "column": 59
                                  },
                                  "end": {
                                    "line": 544,
                                    "column": 60
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              {
                                "type": "Literal",
                                "start": 23543,
                                "end": 23544,
                                "loc": {
                                  "start": {
                                    "line": 544,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 544,
                                    "column": 62
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 23558,
                      "end": 23585,
                      "loc": {
                        "start": {
                          "line": 546,
                          "column": 8
                        },
                        "end": {
                          "line": 546,
                          "column": 35
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 23562,
                          "end": 23584,
                          "loc": {
                            "start": {
                              "line": 546,
                              "column": 12
                            },
                            "end": {
                              "line": 546,
                              "column": 34
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 23562,
                            "end": 23570,
                            "loc": {
                              "start": {
                                "line": 546,
                                "column": 12
                              },
                              "end": {
                                "line": 546,
                                "column": 20
                              }
                            },
                            "name": "distance"
                          },
                          "init": {
                            "type": "Identifier",
                            "start": 23573,
                            "end": 23584,
                            "loc": {
                              "start": {
                                "line": 546,
                                "column": 23
                              },
                              "end": {
                                "line": 546,
                                "column": 34
                              }
                            },
                            "name": "maxDistance"
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 23595,
                      "end": 23611,
                      "loc": {
                        "start": {
                          "line": 547,
                          "column": 8
                        },
                        "end": {
                          "line": 547,
                          "column": 24
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 23599,
                          "end": 23610,
                          "loc": {
                            "start": {
                              "line": 547,
                              "column": 12
                            },
                            "end": {
                              "line": 547,
                              "column": 23
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 23599,
                            "end": 23603,
                            "loc": {
                              "start": {
                                "line": 547,
                                "column": 12
                              },
                              "end": {
                                "line": 547,
                                "column": 16
                              }
                            },
                            "name": "self"
                          },
                          "init": {
                            "type": "ThisExpression",
                            "start": 23606,
                            "end": 23610,
                            "loc": {
                              "start": {
                                "line": 547,
                                "column": 19
                              },
                              "end": {
                                "line": 547,
                                "column": 23
                              }
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 23621,
                      "end": 24441,
                      "loc": {
                        "start": {
                          "line": 548,
                          "column": 8
                        },
                        "end": {
                          "line": 561,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 23621,
                        "end": 24440,
                        "loc": {
                          "start": {
                            "line": 548,
                            "column": 8
                          },
                          "end": {
                            "line": 561,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 23621,
                          "end": 23641,
                          "loc": {
                            "start": {
                              "line": 548,
                              "column": 8
                            },
                            "end": {
                              "line": 548,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 23621,
                            "end": 23633,
                            "loc": {
                              "start": {
                                "line": 548,
                                "column": 8
                              },
                              "end": {
                                "line": 548,
                                "column": 20
                              }
                            },
                            "name": "pointsToSnap"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 23634,
                            "end": 23641,
                            "loc": {
                              "start": {
                                "line": 548,
                                "column": 21
                              },
                              "end": {
                                "line": 548,
                                "column": 28
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "FunctionExpression",
                            "start": 23642,
                            "end": 24439,
                            "loc": {
                              "start": {
                                "line": 548,
                                "column": 29
                              },
                              "end": {
                                "line": 561,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 23651,
                                "end": 23660,
                                "loc": {
                                  "start": {
                                    "line": 548,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 548,
                                    "column": 47
                                  }
                                },
                                "name": "geomPoint"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 23662,
                              "end": 24439,
                              "loc": {
                                "start": {
                                  "line": 548,
                                  "column": 49
                                },
                                "end": {
                                  "line": 561,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 23677,
                                  "end": 23783,
                                  "loc": {
                                    "start": {
                                      "line": 549,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 549,
                                      "column": 118
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 23681,
                                    "end": 23708,
                                    "loc": {
                                      "start": {
                                        "line": 549,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 549,
                                        "column": 43
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 23681,
                                      "end": 23694,
                                      "loc": {
                                        "start": {
                                          "line": 549,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 549,
                                          "column": 29
                                        }
                                      },
                                      "name": "lastDragPoint"
                                    },
                                    "operator": "!==",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 23699,
                                      "end": 23708,
                                      "loc": {
                                        "start": {
                                          "line": 549,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 549,
                                          "column": 43
                                        }
                                      },
                                      "name": "undefined"
                                    }
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 23710,
                                    "end": 23783,
                                    "loc": {
                                      "start": {
                                        "line": 549,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 549,
                                        "column": 118
                                      }
                                    },
                                    "expression": {
                                      "type": "AssignmentExpression",
                                      "start": 23710,
                                      "end": 23782,
                                      "loc": {
                                        "start": {
                                          "line": 549,
                                          "column": 45
                                        },
                                        "end": {
                                          "line": 549,
                                          "column": 117
                                        }
                                      },
                                      "operator": "=",
                                      "left": {
                                        "type": "Identifier",
                                        "start": 23710,
                                        "end": 23734,
                                        "loc": {
                                          "start": {
                                            "line": 549,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 549,
                                            "column": 69
                                          }
                                        },
                                        "name": "fromMousePositionToPoint"
                                      },
                                      "right": {
                                        "type": "CallExpression",
                                        "start": 23737,
                                        "end": 23782,
                                        "loc": {
                                          "start": {
                                            "line": 549,
                                            "column": 72
                                          },
                                          "end": {
                                            "line": 549,
                                            "column": 117
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 23737,
                                          "end": 23767,
                                          "loc": {
                                            "start": {
                                              "line": 549,
                                              "column": 72
                                            },
                                            "end": {
                                              "line": 549,
                                              "column": 102
                                            }
                                          },
                                          "object": {
                                            "type": "CallExpression",
                                            "start": 23737,
                                            "end": 23763,
                                            "loc": {
                                              "start": {
                                                "line": 549,
                                                "column": 72
                                              },
                                              "end": {
                                                "line": 549,
                                                "column": 98
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 23737,
                                              "end": 23761,
                                              "loc": {
                                                "start": {
                                                  "line": 549,
                                                  "column": 72
                                                },
                                                "end": {
                                                  "line": 549,
                                                  "column": 96
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 23737,
                                                "end": 23755,
                                                "loc": {
                                                  "start": {
                                                    "line": 549,
                                                    "column": 72
                                                  },
                                                  "end": {
                                                    "line": 549,
                                                    "column": 90
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 23737,
                                                  "end": 23746,
                                                  "loc": {
                                                    "start": {
                                                      "line": 549,
                                                      "column": 72
                                                    },
                                                    "end": {
                                                      "line": 549,
                                                      "column": 81
                                                    }
                                                  },
                                                  "name": "geomPoint"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 23747,
                                                  "end": 23755,
                                                  "loc": {
                                                    "start": {
                                                      "line": 549,
                                                      "column": 82
                                                    },
                                                    "end": {
                                                      "line": 549,
                                                      "column": 90
                                                    }
                                                  },
                                                  "name": "position"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 23756,
                                                "end": 23761,
                                                "loc": {
                                                  "start": {
                                                    "line": 549,
                                                    "column": 91
                                                  },
                                                  "end": {
                                                    "line": 549,
                                                    "column": 96
                                                  }
                                                },
                                                "name": "clone"
                                              },
                                              "computed": false
                                            },
                                            "arguments": []
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 23764,
                                            "end": 23767,
                                            "loc": {
                                              "start": {
                                                "line": 549,
                                                "column": 99
                                              },
                                              "end": {
                                                "line": 549,
                                                "column": 102
                                              }
                                            },
                                            "name": "sub"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 23768,
                                            "end": 23781,
                                            "loc": {
                                              "start": {
                                                "line": 549,
                                                "column": 103
                                              },
                                              "end": {
                                                "line": 549,
                                                "column": 116
                                              }
                                            },
                                            "name": "lastDragPoint"
                                          }
                                        ]
                                      }
                                    }
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 23797,
                                  "end": 23838,
                                  "loc": {
                                    "start": {
                                      "line": 550,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 550,
                                      "column": 53
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 23801,
                                      "end": 23837,
                                      "loc": {
                                        "start": {
                                          "line": 550,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 550,
                                          "column": 52
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 23801,
                                        "end": 23813,
                                        "loc": {
                                          "start": {
                                            "line": 550,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 550,
                                            "column": 28
                                          }
                                        },
                                        "name": "snapPosition"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 23816,
                                        "end": 23837,
                                        "loc": {
                                          "start": {
                                            "line": 550,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 550,
                                            "column": 52
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 23816,
                                          "end": 23835,
                                          "loc": {
                                            "start": {
                                              "line": 550,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 550,
                                              "column": 50
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 23816,
                                            "end": 23829,
                                            "loc": {
                                              "start": {
                                                "line": 550,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 550,
                                                "column": 44
                                              }
                                            },
                                            "name": "mousePosition"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 23830,
                                            "end": 23835,
                                            "loc": {
                                              "start": {
                                                "line": 550,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 550,
                                                "column": 50
                                              }
                                            },
                                            "name": "clone"
                                          },
                                          "computed": false
                                        },
                                        "arguments": []
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 23852,
                                  "end": 23922,
                                  "loc": {
                                    "start": {
                                      "line": 551,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 551,
                                      "column": 82
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 23856,
                                    "end": 23877,
                                    "loc": {
                                      "start": {
                                        "line": 551,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 551,
                                        "column": 37
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 23856,
                                      "end": 23864,
                                      "loc": {
                                        "start": {
                                          "line": 551,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 551,
                                          "column": 24
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 23856,
                                        "end": 23859,
                                        "loc": {
                                          "start": {
                                            "line": 551,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 551,
                                            "column": 19
                                          }
                                        },
                                        "name": "obj"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 23860,
                                        "end": 23864,
                                        "loc": {
                                          "start": {
                                            "line": 551,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 551,
                                            "column": 24
                                          }
                                        },
                                        "name": "name"
                                      },
                                      "computed": false
                                    },
                                    "operator": "!==",
                                    "right": {
                                      "type": "Literal",
                                      "start": 23869,
                                      "end": 23877,
                                      "loc": {
                                        "start": {
                                          "line": 551,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 551,
                                          "column": 37
                                        }
                                      },
                                      "value": "center",
                                      "rawValue": "center",
                                      "raw": "'center'"
                                    }
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 23879,
                                    "end": 23922,
                                    "loc": {
                                      "start": {
                                        "line": 551,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 551,
                                        "column": 82
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 23879,
                                      "end": 23921,
                                      "loc": {
                                        "start": {
                                          "line": 551,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 551,
                                          "column": 81
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 23879,
                                        "end": 23895,
                                        "loc": {
                                          "start": {
                                            "line": 551,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 551,
                                            "column": 55
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 23879,
                                          "end": 23891,
                                          "loc": {
                                            "start": {
                                              "line": 551,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 551,
                                              "column": 51
                                            }
                                          },
                                          "name": "snapPosition"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 23892,
                                          "end": 23895,
                                          "loc": {
                                            "start": {
                                              "line": 551,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 551,
                                              "column": 55
                                            }
                                          },
                                          "name": "add"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 23896,
                                          "end": 23920,
                                          "loc": {
                                            "start": {
                                              "line": 551,
                                              "column": 56
                                            },
                                            "end": {
                                              "line": 551,
                                              "column": 80
                                            }
                                          },
                                          "name": "fromMousePositionToPoint"
                                        }
                                      ]
                                    }
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 23936,
                                  "end": 24108,
                                  "loc": {
                                    "start": {
                                      "line": 552,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 554,
                                      "column": 14
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 23940,
                                      "end": 24107,
                                      "loc": {
                                        "start": {
                                          "line": 552,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 554,
                                          "column": 13
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 23940,
                                        "end": 23952,
                                        "loc": {
                                          "start": {
                                            "line": 552,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 552,
                                            "column": 28
                                          }
                                        },
                                        "name": "snappedPoint"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 23955,
                                        "end": 24107,
                                        "loc": {
                                          "start": {
                                            "line": 552,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 554,
                                            "column": 13
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 23955,
                                          "end": 23979,
                                          "loc": {
                                            "start": {
                                              "line": 552,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 552,
                                              "column": 55
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 23955,
                                            "end": 23959,
                                            "loc": {
                                              "start": {
                                                "line": 552,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 552,
                                                "column": 35
                                              }
                                            },
                                            "name": "self"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 23960,
                                            "end": 23979,
                                            "loc": {
                                              "start": {
                                                "line": 552,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 552,
                                                "column": 55
                                              }
                                            },
                                            "name": "getClosestSnapPoint"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 23998,
                                            "end": 24010,
                                            "loc": {
                                              "start": {
                                                "line": 553,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 553,
                                                "column": 28
                                              }
                                            },
                                            "name": "snapPosition"
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 24012,
                                            "end": 24023,
                                            "loc": {
                                              "start": {
                                                "line": 553,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 553,
                                                "column": 41
                                              }
                                            },
                                            "name": "maxDistance"
                                          },
                                          {
                                            "type": "ArrowFunctionExpression",
                                            "start": 24025,
                                            "end": 24092,
                                            "loc": {
                                              "start": {
                                                "line": 553,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 553,
                                                "column": 110
                                              }
                                            },
                                            "id": null,
                                            "generator": false,
                                            "expression": true,
                                            "async": false,
                                            "params": [
                                              {
                                                "type": "Identifier",
                                                "start": 24025,
                                                "end": 24028,
                                                "loc": {
                                                  "start": {
                                                    "line": 553,
                                                    "column": 43
                                                  },
                                                  "end": {
                                                    "line": 553,
                                                    "column": 46
                                                  }
                                                },
                                                "name": "arg"
                                              }
                                            ],
                                            "body": {
                                              "type": "BinaryExpression",
                                              "start": 24032,
                                              "end": 24092,
                                              "loc": {
                                                "start": {
                                                  "line": 553,
                                                  "column": 50
                                                },
                                                "end": {
                                                  "line": 553,
                                                  "column": 110
                                                }
                                              },
                                              "left": {
                                                "type": "CallExpression",
                                                "start": 24032,
                                                "end": 24085,
                                                "loc": {
                                                  "start": {
                                                    "line": 553,
                                                    "column": 50
                                                  },
                                                  "end": {
                                                    "line": 553,
                                                    "column": 103
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 24032,
                                                  "end": 24074,
                                                  "loc": {
                                                    "start": {
                                                      "line": 553,
                                                      "column": 50
                                                    },
                                                    "end": {
                                                      "line": 553,
                                                      "column": 92
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "CallExpression",
                                                    "start": 24032,
                                                    "end": 24066,
                                                    "loc": {
                                                      "start": {
                                                        "line": 553,
                                                        "column": 50
                                                      },
                                                      "end": {
                                                        "line": 553,
                                                        "column": 84
                                                      }
                                                    },
                                                    "callee": {
                                                      "type": "MemberExpression",
                                                      "start": 24032,
                                                      "end": 24061,
                                                      "loc": {
                                                        "start": {
                                                          "line": 553,
                                                          "column": 50
                                                        },
                                                        "end": {
                                                          "line": 553,
                                                          "column": 79
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 24032,
                                                        "end": 24038,
                                                        "loc": {
                                                          "start": {
                                                            "line": 553,
                                                            "column": 50
                                                          },
                                                          "end": {
                                                            "line": 553,
                                                            "column": 56
                                                          }
                                                        },
                                                        "name": "Sketch"
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 24039,
                                                        "end": 24061,
                                                        "loc": {
                                                          "start": {
                                                            "line": 553,
                                                            "column": 57
                                                          },
                                                          "end": {
                                                            "line": 553,
                                                            "column": 79
                                                          }
                                                        },
                                                        "name": "ForObjectsWithChildren"
                                                      },
                                                      "computed": false
                                                    },
                                                    "arguments": [
                                                      {
                                                        "type": "Identifier",
                                                        "start": 24062,
                                                        "end": 24065,
                                                        "loc": {
                                                          "start": {
                                                            "line": 553,
                                                            "column": 80
                                                          },
                                                          "end": {
                                                            "line": 553,
                                                            "column": 83
                                                          }
                                                        },
                                                        "name": "arg"
                                                      }
                                                    ]
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 24067,
                                                    "end": 24074,
                                                    "loc": {
                                                      "start": {
                                                        "line": 553,
                                                        "column": 85
                                                      },
                                                      "end": {
                                                        "line": 553,
                                                        "column": 92
                                                      }
                                                    },
                                                    "name": "indexOf"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 24075,
                                                    "end": 24084,
                                                    "loc": {
                                                      "start": {
                                                        "line": 553,
                                                        "column": 93
                                                      },
                                                      "end": {
                                                        "line": 553,
                                                        "column": 102
                                                      }
                                                    },
                                                    "name": "geomPoint"
                                                  }
                                                ]
                                              },
                                              "operator": "!==",
                                              "right": {
                                                "type": "UnaryExpression",
                                                "start": 24090,
                                                "end": 24092,
                                                "loc": {
                                                  "start": {
                                                    "line": 553,
                                                    "column": 108
                                                  },
                                                  "end": {
                                                    "line": 553,
                                                    "column": 110
                                                  }
                                                },
                                                "operator": "-",
                                                "prefix": true,
                                                "argument": {
                                                  "type": "Literal",
                                                  "start": 24091,
                                                  "end": 24092,
                                                  "loc": {
                                                    "start": {
                                                      "line": 553,
                                                      "column": 109
                                                    },
                                                    "end": {
                                                      "line": 553,
                                                      "column": 110
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                }
                                              }
                                            }
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 24124,
                                  "end": 24428,
                                  "loc": {
                                    "start": {
                                      "line": 556,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 560,
                                      "column": 13
                                    }
                                  },
                                  "test": {
                                    "type": "LogicalExpression",
                                    "start": 24128,
                                    "end": 24200,
                                    "loc": {
                                      "start": {
                                        "line": 556,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 556,
                                        "column": 88
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 24128,
                                      "end": 24150,
                                      "loc": {
                                        "start": {
                                          "line": 556,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 556,
                                          "column": 38
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24128,
                                        "end": 24140,
                                        "loc": {
                                          "start": {
                                            "line": 556,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 556,
                                            "column": 28
                                          }
                                        },
                                        "name": "snappedPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24141,
                                        "end": 24150,
                                        "loc": {
                                          "start": {
                                            "line": 556,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 556,
                                            "column": 38
                                          }
                                        },
                                        "name": "isSnapped"
                                      },
                                      "computed": false
                                    },
                                    "operator": "&&",
                                    "right": {
                                      "type": "BinaryExpression",
                                      "start": 24154,
                                      "end": 24200,
                                      "loc": {
                                        "start": {
                                          "line": 556,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 556,
                                          "column": 88
                                        }
                                      },
                                      "left": {
                                        "type": "CallExpression",
                                        "start": 24154,
                                        "end": 24189,
                                        "loc": {
                                          "start": {
                                            "line": 556,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 556,
                                            "column": 77
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 24154,
                                          "end": 24187,
                                          "loc": {
                                            "start": {
                                              "line": 556,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 556,
                                              "column": 75
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 24154,
                                            "end": 24180,
                                            "loc": {
                                              "start": {
                                                "line": 556,
                                                "column": 42
                                              },
                                              "end": {
                                                "line": 556,
                                                "column": 68
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 24154,
                                              "end": 24166,
                                              "loc": {
                                                "start": {
                                                  "line": 556,
                                                  "column": 42
                                                },
                                                "end": {
                                                  "line": 556,
                                                  "column": 54
                                                }
                                              },
                                              "name": "snappedPoint"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 24167,
                                              "end": 24180,
                                              "loc": {
                                                "start": {
                                                  "line": 556,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 556,
                                                  "column": 68
                                                }
                                              },
                                              "name": "snappingShift"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 24181,
                                            "end": 24187,
                                            "loc": {
                                              "start": {
                                                "line": 556,
                                                "column": 69
                                              },
                                              "end": {
                                                "line": 556,
                                                "column": 75
                                              }
                                            },
                                            "name": "length"
                                          },
                                          "computed": false
                                        },
                                        "arguments": []
                                      },
                                      "operator": "<",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 24192,
                                        "end": 24200,
                                        "loc": {
                                          "start": {
                                            "line": 556,
                                            "column": 80
                                          },
                                          "end": {
                                            "line": 556,
                                            "column": 88
                                          }
                                        },
                                        "name": "distance"
                                      }
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 24202,
                                    "end": 24428,
                                    "loc": {
                                      "start": {
                                        "line": 556,
                                        "column": 90
                                      },
                                      "end": {
                                        "line": 560,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 24221,
                                        "end": 24268,
                                        "loc": {
                                          "start": {
                                            "line": 557,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 557,
                                            "column": 63
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 24221,
                                          "end": 24267,
                                          "loc": {
                                            "start": {
                                              "line": 557,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 557,
                                              "column": 62
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "Identifier",
                                            "start": 24221,
                                            "end": 24229,
                                            "loc": {
                                              "start": {
                                                "line": 557,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 557,
                                                "column": 24
                                              }
                                            },
                                            "name": "distance"
                                          },
                                          "right": {
                                            "type": "CallExpression",
                                            "start": 24232,
                                            "end": 24267,
                                            "loc": {
                                              "start": {
                                                "line": 557,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 557,
                                                "column": 62
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 24232,
                                              "end": 24265,
                                              "loc": {
                                                "start": {
                                                  "line": 557,
                                                  "column": 27
                                                },
                                                "end": {
                                                  "line": 557,
                                                  "column": 60
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 24232,
                                                "end": 24258,
                                                "loc": {
                                                  "start": {
                                                    "line": 557,
                                                    "column": 27
                                                  },
                                                  "end": {
                                                    "line": 557,
                                                    "column": 53
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 24232,
                                                  "end": 24244,
                                                  "loc": {
                                                    "start": {
                                                      "line": 557,
                                                      "column": 27
                                                    },
                                                    "end": {
                                                      "line": 557,
                                                      "column": 39
                                                    }
                                                  },
                                                  "name": "snappedPoint"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 24245,
                                                  "end": 24258,
                                                  "loc": {
                                                    "start": {
                                                      "line": 557,
                                                      "column": 40
                                                    },
                                                    "end": {
                                                      "line": 557,
                                                      "column": 53
                                                    }
                                                  },
                                                  "name": "snappingShift"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 24259,
                                                "end": 24265,
                                                "loc": {
                                                  "start": {
                                                    "line": 557,
                                                    "column": 54
                                                  },
                                                  "end": {
                                                    "line": 557,
                                                    "column": 60
                                                  }
                                                },
                                                "name": "length"
                                              },
                                              "computed": false
                                            },
                                            "arguments": []
                                          }
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 24286,
                                        "end": 24326,
                                        "loc": {
                                          "start": {
                                            "line": 558,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 558,
                                            "column": 56
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 24286,
                                          "end": 24325,
                                          "loc": {
                                            "start": {
                                              "line": 558,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 558,
                                              "column": 55
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "Identifier",
                                            "start": 24286,
                                            "end": 24294,
                                            "loc": {
                                              "start": {
                                                "line": 558,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 558,
                                                "column": 24
                                              }
                                            },
                                            "name": "toReturn"
                                          },
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 24297,
                                            "end": 24325,
                                            "loc": {
                                              "start": {
                                                "line": 558,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 558,
                                                "column": 55
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 24297,
                                              "end": 24309,
                                              "loc": {
                                                "start": {
                                                  "line": 558,
                                                  "column": 27
                                                },
                                                "end": {
                                                  "line": 558,
                                                  "column": 39
                                                }
                                              },
                                              "name": "snappedPoint"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 24310,
                                              "end": 24325,
                                              "loc": {
                                                "start": {
                                                  "line": 558,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 558,
                                                  "column": 55
                                                }
                                              },
                                              "name": "snappedPosition"
                                            },
                                            "computed": false
                                          }
                                        }
                                      },
                                      {
                                        "type": "IfStatement",
                                        "start": 24344,
                                        "end": 24413,
                                        "loc": {
                                          "start": {
                                            "line": 559,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 559,
                                            "column": 85
                                          }
                                        },
                                        "test": {
                                          "type": "UnaryExpression",
                                          "start": 24348,
                                          "end": 24372,
                                          "loc": {
                                            "start": {
                                              "line": 559,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 559,
                                              "column": 44
                                            }
                                          },
                                          "operator": "!",
                                          "prefix": true,
                                          "argument": {
                                            "type": "BinaryExpression",
                                            "start": 24350,
                                            "end": 24371,
                                            "loc": {
                                              "start": {
                                                "line": 559,
                                                "column": 22
                                              },
                                              "end": {
                                                "line": 559,
                                                "column": 43
                                              }
                                            },
                                            "left": {
                                              "type": "Identifier",
                                              "start": 24350,
                                              "end": 24353,
                                              "loc": {
                                                "start": {
                                                  "line": 559,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 559,
                                                  "column": 25
                                                }
                                              },
                                              "name": "obj"
                                            },
                                            "operator": "instanceof",
                                            "right": {
                                              "type": "Identifier",
                                              "start": 24366,
                                              "end": 24371,
                                              "loc": {
                                                "start": {
                                                  "line": 559,
                                                  "column": 38
                                                },
                                                "end": {
                                                  "line": 559,
                                                  "column": 43
                                                }
                                              },
                                              "name": "Point"
                                            },
                                            "parenthesizedExpression": true
                                          }
                                        },
                                        "consequent": {
                                          "type": "ExpressionStatement",
                                          "start": 24374,
                                          "end": 24413,
                                          "loc": {
                                            "start": {
                                              "line": 559,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 559,
                                              "column": 85
                                            }
                                          },
                                          "expression": {
                                            "type": "CallExpression",
                                            "start": 24374,
                                            "end": 24412,
                                            "loc": {
                                              "start": {
                                                "line": 559,
                                                "column": 46
                                              },
                                              "end": {
                                                "line": 559,
                                                "column": 84
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 24374,
                                              "end": 24386,
                                              "loc": {
                                                "start": {
                                                  "line": 559,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 559,
                                                  "column": 58
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 24374,
                                                "end": 24382,
                                                "loc": {
                                                  "start": {
                                                    "line": 559,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 559,
                                                    "column": 54
                                                  }
                                                },
                                                "name": "toReturn"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 24383,
                                                "end": 24386,
                                                "loc": {
                                                  "start": {
                                                    "line": 559,
                                                    "column": 55
                                                  },
                                                  "end": {
                                                    "line": 559,
                                                    "column": 58
                                                  }
                                                },
                                                "name": "sub"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 24387,
                                                "end": 24411,
                                                "loc": {
                                                  "start": {
                                                    "line": 559,
                                                    "column": 59
                                                  },
                                                  "end": {
                                                    "line": 559,
                                                    "column": 83
                                                  }
                                                },
                                                "name": "fromMousePositionToPoint"
                                              }
                                            ]
                                          }
                                        },
                                        "alternate": null
                                      }
                                    ]
                                  },
                                  "alternate": null
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 24453,
                      "end": 24469,
                      "loc": {
                        "start": {
                          "line": 563,
                          "column": 8
                        },
                        "end": {
                          "line": 563,
                          "column": 24
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 24460,
                        "end": 24468,
                        "loc": {
                          "start": {
                            "line": 563,
                            "column": 15
                          },
                          "end": {
                            "line": 563,
                            "column": 23
                          }
                        },
                        "name": "toReturn"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 24484,
              "end": 24556,
              "loc": {
                "start": {
                  "line": 566,
                  "column": 4
                },
                "end": {
                  "line": 568,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 24484,
                "end": 24498,
                "loc": {
                  "start": {
                    "line": 566,
                    "column": 4
                  },
                  "end": {
                    "line": 566,
                    "column": 18
                  }
                },
                "name": "showDimensions"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 24498,
                "end": 24556,
                "loc": {
                  "start": {
                    "line": 566,
                    "column": 18
                  },
                  "end": {
                    "line": 568,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 24501,
                  "end": 24556,
                  "loc": {
                    "start": {
                      "line": 566,
                      "column": 21
                    },
                    "end": {
                      "line": 568,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 24512,
                      "end": 24549,
                      "loc": {
                        "start": {
                          "line": 567,
                          "column": 8
                        },
                        "end": {
                          "line": 567,
                          "column": 45
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 24512,
                        "end": 24548,
                        "loc": {
                          "start": {
                            "line": 567,
                            "column": 8
                          },
                          "end": {
                            "line": 567,
                            "column": 44
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 24512,
                          "end": 24529,
                          "loc": {
                            "start": {
                              "line": 567,
                              "column": 8
                            },
                            "end": {
                              "line": 567,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 24512,
                            "end": 24516,
                            "loc": {
                              "start": {
                                "line": 567,
                                "column": 8
                              },
                              "end": {
                                "line": 567,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 24517,
                            "end": 24529,
                            "loc": {
                              "start": {
                                "line": 567,
                                "column": 13
                              },
                              "end": {
                                "line": 567,
                                "column": 25
                              }
                            },
                            "name": "addAuxObject"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 24530,
                            "end": 24547,
                            "loc": {
                              "start": {
                                "line": 567,
                                "column": 26
                              },
                              "end": {
                                "line": 567,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 24530,
                              "end": 24534,
                              "loc": {
                                "start": {
                                  "line": 567,
                                  "column": 26
                                },
                                "end": {
                                  "line": 567,
                                  "column": 30
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 24535,
                              "end": 24547,
                              "loc": {
                                "start": {
                                  "line": 567,
                                  "column": 31
                                },
                                "end": {
                                  "line": 567,
                                  "column": 43
                                }
                              },
                              "name": "__dimensions"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 24564,
              "end": 24639,
              "loc": {
                "start": {
                  "line": 570,
                  "column": 4
                },
                "end": {
                  "line": 572,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 24564,
                "end": 24578,
                "loc": {
                  "start": {
                    "line": 570,
                    "column": 4
                  },
                  "end": {
                    "line": 570,
                    "column": 18
                  }
                },
                "name": "hideDimensions"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 24578,
                "end": 24639,
                "loc": {
                  "start": {
                    "line": 570,
                    "column": 18
                  },
                  "end": {
                    "line": 572,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 24581,
                  "end": 24639,
                  "loc": {
                    "start": {
                      "line": 570,
                      "column": 21
                    },
                    "end": {
                      "line": 572,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 24592,
                      "end": 24632,
                      "loc": {
                        "start": {
                          "line": 571,
                          "column": 8
                        },
                        "end": {
                          "line": 571,
                          "column": 48
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 24592,
                        "end": 24631,
                        "loc": {
                          "start": {
                            "line": 571,
                            "column": 8
                          },
                          "end": {
                            "line": 571,
                            "column": 47
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 24592,
                          "end": 24612,
                          "loc": {
                            "start": {
                              "line": 571,
                              "column": 8
                            },
                            "end": {
                              "line": 571,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 24592,
                            "end": 24596,
                            "loc": {
                              "start": {
                                "line": 571,
                                "column": 8
                              },
                              "end": {
                                "line": 571,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 24597,
                            "end": 24612,
                            "loc": {
                              "start": {
                                "line": 571,
                                "column": 13
                              },
                              "end": {
                                "line": 571,
                                "column": 28
                              }
                            },
                            "name": "removeAuxObject"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 24613,
                            "end": 24630,
                            "loc": {
                              "start": {
                                "line": 571,
                                "column": 29
                              },
                              "end": {
                                "line": 571,
                                "column": 46
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 24613,
                              "end": 24617,
                              "loc": {
                                "start": {
                                  "line": 571,
                                  "column": 29
                                },
                                "end": {
                                  "line": 571,
                                  "column": 33
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 24618,
                              "end": 24630,
                              "loc": {
                                "start": {
                                  "line": 571,
                                  "column": 34
                                },
                                "end": {
                                  "line": 571,
                                  "column": 46
                                }
                              },
                              "name": "__dimensions"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " intercept graphical objects created on the server",
                  "start": 24647,
                  "end": 24699,
                  "loc": {
                    "start": {
                      "line": 574,
                      "column": 4
                    },
                    "end": {
                      "line": 574,
                      "column": 56
                    }
                  },
                  "range": [
                    24647,
                    24699
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 24705,
              "end": 27918,
              "loc": {
                "start": {
                  "line": 575,
                  "column": 4
                },
                "end": {
                  "line": 645,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 24705,
                "end": 24728,
                "loc": {
                  "start": {
                    "line": 575,
                    "column": 4
                  },
                  "end": {
                    "line": 575,
                    "column": 27
                  }
                },
                "name": "updateDimensionsFactory",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 24728,
                "end": 27918,
                "loc": {
                  "start": {
                    "line": 575,
                    "column": 27
                  },
                  "end": {
                    "line": 645,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 24729,
                    "end": 24734,
                    "loc": {
                      "start": {
                        "line": 575,
                        "column": 28
                      },
                      "end": {
                        "line": 575,
                        "column": 33
                      }
                    },
                    "name": "input"
                  },
                  {
                    "type": "Identifier",
                    "start": 24736,
                    "end": 24742,
                    "loc": {
                      "start": {
                        "line": 575,
                        "column": 35
                      },
                      "end": {
                        "line": 575,
                        "column": 41
                      }
                    },
                    "name": "result"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 24744,
                  "end": 27918,
                  "loc": {
                    "start": {
                      "line": 575,
                      "column": 43
                    },
                    "end": {
                      "line": 645,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 24755,
                      "end": 24777,
                      "loc": {
                        "start": {
                          "line": 576,
                          "column": 8
                        },
                        "end": {
                          "line": 576,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 24759,
                          "end": 24776,
                          "loc": {
                            "start": {
                              "line": 576,
                              "column": 12
                            },
                            "end": {
                              "line": 576,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 24759,
                            "end": 24763,
                            "loc": {
                              "start": {
                                "line": 576,
                                "column": 12
                              },
                              "end": {
                                "line": 576,
                                "column": 16
                              }
                            },
                            "name": "data"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 24766,
                            "end": 24776,
                            "loc": {
                              "start": {
                                "line": 576,
                                "column": 19
                              },
                              "end": {
                                "line": 576,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 24766,
                              "end": 24771,
                              "loc": {
                                "start": {
                                  "line": 576,
                                  "column": 19
                                },
                                "end": {
                                  "line": 576,
                                  "column": 24
                                }
                              },
                              "name": "input"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 24772,
                              "end": 24776,
                              "loc": {
                                "start": {
                                  "line": 576,
                                  "column": 25
                                },
                                "end": {
                                  "line": 576,
                                  "column": 29
                                }
                              },
                              "name": "data"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 24787,
                      "end": 24852,
                      "loc": {
                        "start": {
                          "line": 577,
                          "column": 8
                        },
                        "end": {
                          "line": 577,
                          "column": 73
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 24791,
                          "end": 24851,
                          "loc": {
                            "start": {
                              "line": 577,
                              "column": 12
                            },
                            "end": {
                              "line": 577,
                              "column": 72
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 24791,
                            "end": 24803,
                            "loc": {
                              "start": {
                                "line": 577,
                                "column": 12
                              },
                              "end": {
                                "line": 577,
                                "column": 24
                              }
                            },
                            "name": "worldToLocal"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 24806,
                            "end": 24851,
                            "loc": {
                              "start": {
                                "line": 577,
                                "column": 27
                              },
                              "end": {
                                "line": 577,
                                "column": 72
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 24806,
                              "end": 24838,
                              "loc": {
                                "start": {
                                  "line": 577,
                                  "column": 27
                                },
                                "end": {
                                  "line": 577,
                                  "column": 59
                                }
                              },
                              "object": {
                                "type": "NewExpression",
                                "start": 24807,
                                "end": 24826,
                                "loc": {
                                  "start": {
                                    "line": 577,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 577,
                                    "column": 47
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 24811,
                                  "end": 24824,
                                  "loc": {
                                    "start": {
                                      "line": 577,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 577,
                                      "column": 45
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 24811,
                                    "end": 24816,
                                    "loc": {
                                      "start": {
                                        "line": 577,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 577,
                                        "column": 37
                                      }
                                    },
                                    "name": "THREE"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 24817,
                                    "end": 24824,
                                    "loc": {
                                      "start": {
                                        "line": 577,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 577,
                                        "column": 45
                                      }
                                    },
                                    "name": "Matrix4"
                                  },
                                  "computed": false
                                },
                                "arguments": [],
                                "parenthesizedExpression": true
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 24828,
                                "end": 24838,
                                "loc": {
                                  "start": {
                                    "line": 577,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 577,
                                    "column": 59
                                  }
                                },
                                "name": "getInverse"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 24839,
                                "end": 24850,
                                "loc": {
                                  "start": {
                                    "line": 577,
                                    "column": 60
                                  },
                                  "end": {
                                    "line": 577,
                                    "column": 71
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 24839,
                                  "end": 24843,
                                  "loc": {
                                    "start": {
                                      "line": 577,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 577,
                                      "column": 64
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 24844,
                                  "end": 24850,
                                  "loc": {
                                    "start": {
                                      "line": 577,
                                      "column": 65
                                    },
                                    "end": {
                                      "line": 577,
                                      "column": 71
                                    }
                                  },
                                  "name": "matrix"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "SwitchStatement",
                      "start": 24864,
                      "end": 27911,
                      "loc": {
                        "start": {
                          "line": 579,
                          "column": 8
                        },
                        "end": {
                          "line": 644,
                          "column": 9
                        }
                      },
                      "discriminant": {
                        "type": "MemberExpression",
                        "start": 24872,
                        "end": 24882,
                        "loc": {
                          "start": {
                            "line": 579,
                            "column": 16
                          },
                          "end": {
                            "line": 579,
                            "column": 26
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 24872,
                          "end": 24877,
                          "loc": {
                            "start": {
                              "line": 579,
                              "column": 16
                            },
                            "end": {
                              "line": 579,
                              "column": 21
                            }
                          },
                          "name": "input"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 24878,
                          "end": 24882,
                          "loc": {
                            "start": {
                              "line": 579,
                              "column": 22
                            },
                            "end": {
                              "line": 579,
                              "column": 26
                            }
                          },
                          "name": "type"
                        },
                        "computed": false
                      },
                      "cases": [
                        {
                          "type": "SwitchCase",
                          "start": 24899,
                          "end": 26174,
                          "loc": {
                            "start": {
                              "line": 580,
                              "column": 12
                            },
                            "end": {
                              "line": 606,
                              "column": 22
                            }
                          },
                          "consequent": [
                            {
                              "type": "VariableDeclaration",
                              "start": 24980,
                              "end": 25064,
                              "loc": {
                                "start": {
                                  "line": 582,
                                  "column": 16
                                },
                                "end": {
                                  "line": 582,
                                  "column": 100
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 24984,
                                  "end": 25063,
                                  "loc": {
                                    "start": {
                                      "line": 582,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 582,
                                      "column": 99
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 24984,
                                    "end": 24987,
                                    "loc": {
                                      "start": {
                                        "line": 582,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 582,
                                        "column": 23
                                      }
                                    },
                                    "name": "pos",
                                    "leadingComments": null
                                  },
                                  "init": {
                                    "type": "CallExpression",
                                    "start": 24990,
                                    "end": 25063,
                                    "loc": {
                                      "start": {
                                        "line": 582,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 582,
                                        "column": 99
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24990,
                                      "end": 25049,
                                      "loc": {
                                        "start": {
                                          "line": 582,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 582,
                                          "column": 85
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 24990,
                                        "end": 25036,
                                        "loc": {
                                          "start": {
                                            "line": 582,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 582,
                                            "column": 72
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 24990,
                                          "end": 25021,
                                          "loc": {
                                            "start": {
                                              "line": 582,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 582,
                                              "column": 57
                                            }
                                          },
                                          "object": {
                                            "type": "NewExpression",
                                            "start": 24991,
                                            "end": 25010,
                                            "loc": {
                                              "start": {
                                                "line": 582,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 582,
                                                "column": 46
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 24995,
                                              "end": 25008,
                                              "loc": {
                                                "start": {
                                                  "line": 582,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 582,
                                                  "column": 44
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 24995,
                                                "end": 25000,
                                                "loc": {
                                                  "start": {
                                                    "line": 582,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 582,
                                                    "column": 36
                                                  }
                                                },
                                                "name": "THREE"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 25001,
                                                "end": 25008,
                                                "loc": {
                                                  "start": {
                                                    "line": 582,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 582,
                                                    "column": 44
                                                  }
                                                },
                                                "name": "Vector3"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [],
                                            "parenthesizedExpression": true
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 25012,
                                            "end": 25021,
                                            "loc": {
                                              "start": {
                                                "line": 582,
                                                "column": 48
                                              },
                                              "end": {
                                                "line": 582,
                                                "column": 57
                                              }
                                            },
                                            "name": "fromArray"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "MemberExpression",
                                            "start": 25022,
                                            "end": 25035,
                                            "loc": {
                                              "start": {
                                                "line": 582,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 582,
                                                "column": 71
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 25022,
                                              "end": 25026,
                                              "loc": {
                                                "start": {
                                                  "line": 582,
                                                  "column": 58
                                                },
                                                "end": {
                                                  "line": 582,
                                                  "column": 62
                                                }
                                              },
                                              "name": "data"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 25027,
                                              "end": 25035,
                                              "loc": {
                                                "start": {
                                                  "line": 582,
                                                  "column": 63
                                                },
                                                "end": {
                                                  "line": 582,
                                                  "column": 71
                                                }
                                              },
                                              "name": "position"
                                            },
                                            "computed": false
                                          }
                                        ]
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 25037,
                                        "end": 25049,
                                        "loc": {
                                          "start": {
                                            "line": 582,
                                            "column": 73
                                          },
                                          "end": {
                                            "line": 582,
                                            "column": 85
                                          }
                                        },
                                        "name": "applyMatrix4"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 25050,
                                        "end": 25062,
                                        "loc": {
                                          "start": {
                                            "line": 582,
                                            "column": 86
                                          },
                                          "end": {
                                            "line": 582,
                                            "column": 98
                                          }
                                        },
                                        "name": "worldToLocal"
                                      }
                                    ]
                                  },
                                  "leadingComments": null
                                }
                              ],
                              "kind": "var",
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "transform to sketch coordinates",
                                  "start": 24929,
                                  "end": 24962,
                                  "loc": {
                                    "start": {
                                      "line": 581,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 581,
                                      "column": 49
                                    }
                                  },
                                  "range": [
                                    24929,
                                    24962
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 25082,
                              "end": 25168,
                              "loc": {
                                "start": {
                                  "line": 583,
                                  "column": 16
                                },
                                "end": {
                                  "line": 583,
                                  "column": 102
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 25086,
                                  "end": 25167,
                                  "loc": {
                                    "start": {
                                      "line": 583,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 583,
                                      "column": 101
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 25086,
                                    "end": 25089,
                                    "loc": {
                                      "start": {
                                        "line": 583,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 583,
                                        "column": 23
                                      }
                                    },
                                    "name": "dir"
                                  },
                                  "init": {
                                    "type": "CallExpression",
                                    "start": 25092,
                                    "end": 25167,
                                    "loc": {
                                      "start": {
                                        "line": 583,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 583,
                                        "column": 101
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 25092,
                                      "end": 25153,
                                      "loc": {
                                        "start": {
                                          "line": 583,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 583,
                                          "column": 87
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 25092,
                                        "end": 25134,
                                        "loc": {
                                          "start": {
                                            "line": 583,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 583,
                                            "column": 68
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 25092,
                                          "end": 25123,
                                          "loc": {
                                            "start": {
                                              "line": 583,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 583,
                                              "column": 57
                                            }
                                          },
                                          "object": {
                                            "type": "NewExpression",
                                            "start": 25093,
                                            "end": 25112,
                                            "loc": {
                                              "start": {
                                                "line": 583,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 583,
                                                "column": 46
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 25097,
                                              "end": 25110,
                                              "loc": {
                                                "start": {
                                                  "line": 583,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 583,
                                                  "column": 44
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 25097,
                                                "end": 25102,
                                                "loc": {
                                                  "start": {
                                                    "line": 583,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 583,
                                                    "column": 36
                                                  }
                                                },
                                                "name": "THREE"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 25103,
                                                "end": 25110,
                                                "loc": {
                                                  "start": {
                                                    "line": 583,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 583,
                                                    "column": 44
                                                  }
                                                },
                                                "name": "Vector3"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [],
                                            "parenthesizedExpression": true
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 25114,
                                            "end": 25123,
                                            "loc": {
                                              "start": {
                                                "line": 583,
                                                "column": 48
                                              },
                                              "end": {
                                                "line": 583,
                                                "column": 57
                                              }
                                            },
                                            "name": "fromArray"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "MemberExpression",
                                            "start": 25124,
                                            "end": 25133,
                                            "loc": {
                                              "start": {
                                                "line": 583,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 583,
                                                "column": 67
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 25124,
                                              "end": 25128,
                                              "loc": {
                                                "start": {
                                                  "line": 583,
                                                  "column": 58
                                                },
                                                "end": {
                                                  "line": 583,
                                                  "column": 62
                                                }
                                              },
                                              "name": "data"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 25129,
                                              "end": 25133,
                                              "loc": {
                                                "start": {
                                                  "line": 583,
                                                  "column": 63
                                                },
                                                "end": {
                                                  "line": 583,
                                                  "column": 67
                                                }
                                              },
                                              "name": "axis"
                                            },
                                            "computed": false
                                          }
                                        ]
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 25135,
                                        "end": 25153,
                                        "loc": {
                                          "start": {
                                            "line": 583,
                                            "column": 69
                                          },
                                          "end": {
                                            "line": 583,
                                            "column": 87
                                          }
                                        },
                                        "name": "transformDirection"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 25154,
                                        "end": 25166,
                                        "loc": {
                                          "start": {
                                            "line": 583,
                                            "column": 88
                                          },
                                          "end": {
                                            "line": 583,
                                            "column": 100
                                          }
                                        },
                                        "name": "worldToLocal"
                                      }
                                    ]
                                  }
                                }
                              ],
                              "kind": "var"
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 25186,
                              "end": 25212,
                              "loc": {
                                "start": {
                                  "line": 584,
                                  "column": 16
                                },
                                "end": {
                                  "line": 584,
                                  "column": 42
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 25190,
                                  "end": 25211,
                                  "loc": {
                                    "start": {
                                      "line": 584,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 584,
                                      "column": 41
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 25190,
                                    "end": 25196,
                                    "loc": {
                                      "start": {
                                        "line": 584,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 584,
                                        "column": 26
                                      }
                                    },
                                    "name": "height"
                                  },
                                  "init": {
                                    "type": "CallExpression",
                                    "start": 25199,
                                    "end": 25211,
                                    "loc": {
                                      "start": {
                                        "line": 584,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 584,
                                        "column": 41
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 25199,
                                      "end": 25209,
                                      "loc": {
                                        "start": {
                                          "line": 584,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 584,
                                          "column": 39
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 25199,
                                        "end": 25202,
                                        "loc": {
                                          "start": {
                                            "line": 584,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 584,
                                            "column": 32
                                          }
                                        },
                                        "name": "dir"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 25203,
                                        "end": 25209,
                                        "loc": {
                                          "start": {
                                            "line": 584,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 584,
                                            "column": 39
                                          }
                                        },
                                        "name": "length"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                }
                              ],
                              "kind": "var"
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 25230,
                              "end": 25288,
                              "loc": {
                                "start": {
                                  "line": 585,
                                  "column": 16
                                },
                                "end": {
                                  "line": 585,
                                  "column": 74
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 25234,
                                  "end": 25287,
                                  "loc": {
                                    "start": {
                                      "line": 585,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 585,
                                      "column": 73
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 25234,
                                    "end": 25238,
                                    "loc": {
                                      "start": {
                                        "line": 585,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 585,
                                        "column": 24
                                      }
                                    },
                                    "name": "diam"
                                  },
                                  "init": {
                                    "type": "CallExpression",
                                    "start": 25241,
                                    "end": 25287,
                                    "loc": {
                                      "start": {
                                        "line": 585,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 585,
                                        "column": 73
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 25241,
                                      "end": 25249,
                                      "loc": {
                                        "start": {
                                          "line": 585,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 585,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 25241,
                                        "end": 25245,
                                        "loc": {
                                          "start": {
                                            "line": 585,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 585,
                                            "column": 31
                                          }
                                        },
                                        "name": "Math"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 25246,
                                        "end": 25249,
                                        "loc": {
                                          "start": {
                                            "line": 585,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 585,
                                            "column": 35
                                          }
                                        },
                                        "name": "max"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 25250,
                                        "end": 25267,
                                        "loc": {
                                          "start": {
                                            "line": 585,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 585,
                                            "column": 53
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 25250,
                                          "end": 25264,
                                          "loc": {
                                            "start": {
                                              "line": 585,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 585,
                                              "column": 50
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 25250,
                                            "end": 25254,
                                            "loc": {
                                              "start": {
                                                "line": 585,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 585,
                                                "column": 40
                                              }
                                            },
                                            "name": "data"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 25255,
                                            "end": 25264,
                                            "loc": {
                                              "start": {
                                                "line": 585,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 585,
                                                "column": 50
                                              }
                                            },
                                            "name": "diameters"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 25265,
                                          "end": 25266,
                                          "loc": {
                                            "start": {
                                              "line": 585,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 585,
                                              "column": 52
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        "computed": true
                                      },
                                      {
                                        "type": "MemberExpression",
                                        "start": 25269,
                                        "end": 25286,
                                        "loc": {
                                          "start": {
                                            "line": 585,
                                            "column": 55
                                          },
                                          "end": {
                                            "line": 585,
                                            "column": 72
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 25269,
                                          "end": 25283,
                                          "loc": {
                                            "start": {
                                              "line": 585,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 585,
                                              "column": 69
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 25269,
                                            "end": 25273,
                                            "loc": {
                                              "start": {
                                                "line": 585,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 585,
                                                "column": 59
                                              }
                                            },
                                            "name": "data"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 25274,
                                            "end": 25283,
                                            "loc": {
                                              "start": {
                                                "line": 585,
                                                "column": 60
                                              },
                                              "end": {
                                                "line": 585,
                                                "column": 69
                                              }
                                            },
                                            "name": "diameters"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 25284,
                                          "end": 25285,
                                          "loc": {
                                            "start": {
                                              "line": 585,
                                              "column": 70
                                            },
                                            "end": {
                                              "line": 585,
                                              "column": 71
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        },
                                        "computed": true
                                      }
                                    ]
                                  }
                                }
                              ],
                              "kind": "var",
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "create two-sided arrow",
                                  "start": 25308,
                                  "end": 25332,
                                  "loc": {
                                    "start": {
                                      "line": 587,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 587,
                                      "column": 40
                                    }
                                  },
                                  "range": [
                                    25308,
                                    25332
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 25350,
                              "end": 25382,
                              "loc": {
                                "start": {
                                  "line": 588,
                                  "column": 16
                                },
                                "end": {
                                  "line": 588,
                                  "column": 48
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 25354,
                                  "end": 25381,
                                  "loc": {
                                    "start": {
                                      "line": 588,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 588,
                                      "column": 47
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 25354,
                                    "end": 25358,
                                    "loc": {
                                      "start": {
                                        "line": 588,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 588,
                                        "column": 24
                                      }
                                    },
                                    "name": "geom",
                                    "leadingComments": null
                                  },
                                  "init": {
                                    "type": "NewExpression",
                                    "start": 25361,
                                    "end": 25381,
                                    "loc": {
                                      "start": {
                                        "line": 588,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 588,
                                        "column": 47
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 25365,
                                      "end": 25379,
                                      "loc": {
                                        "start": {
                                          "line": 588,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 588,
                                          "column": 45
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 25365,
                                        "end": 25370,
                                        "loc": {
                                          "start": {
                                            "line": 588,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 588,
                                            "column": 36
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 25371,
                                        "end": 25379,
                                        "loc": {
                                          "start": {
                                            "line": 588,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 588,
                                            "column": 45
                                          }
                                        },
                                        "name": "Geometry"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  "leadingComments": null
                                }
                              ],
                              "kind": "var",
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "create two-sided arrow",
                                  "start": 25308,
                                  "end": 25332,
                                  "loc": {
                                    "start": {
                                      "line": 587,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 587,
                                      "column": 40
                                    }
                                  },
                                  "range": [
                                    25308,
                                    25332
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 25400,
                              "end": 25636,
                              "loc": {
                                "start": {
                                  "line": 589,
                                  "column": 16
                                },
                                "end": {
                                  "line": 593,
                                  "column": 18
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 25400,
                                "end": 25635,
                                "loc": {
                                  "start": {
                                    "line": 589,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 593,
                                    "column": 17
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 25400,
                                  "end": 25418,
                                  "loc": {
                                    "start": {
                                      "line": 589,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 589,
                                      "column": 34
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 25400,
                                    "end": 25413,
                                    "loc": {
                                      "start": {
                                        "line": 589,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 589,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 25400,
                                      "end": 25404,
                                      "loc": {
                                        "start": {
                                          "line": 589,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 589,
                                          "column": 20
                                        }
                                      },
                                      "name": "geom"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 25405,
                                      "end": 25413,
                                      "loc": {
                                        "start": {
                                          "line": 589,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 589,
                                          "column": 29
                                        }
                                      },
                                      "name": "vertices"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 25414,
                                    "end": 25418,
                                    "loc": {
                                      "start": {
                                        "line": 589,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 589,
                                        "column": 34
                                      }
                                    },
                                    "name": "push"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "NewExpression",
                                    "start": 25447,
                                    "end": 25484,
                                    "loc": {
                                      "start": {
                                        "line": 590,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 590,
                                        "column": 63
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 25451,
                                      "end": 25464,
                                      "loc": {
                                        "start": {
                                          "line": 590,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 590,
                                          "column": 43
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 25451,
                                        "end": 25456,
                                        "loc": {
                                          "start": {
                                            "line": 590,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 590,
                                            "column": 35
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 25457,
                                        "end": 25464,
                                        "loc": {
                                          "start": {
                                            "line": 590,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 590,
                                            "column": 43
                                          }
                                        },
                                        "name": "Vector3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 25465,
                                        "end": 25471,
                                        "loc": {
                                          "start": {
                                            "line": 590,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 590,
                                            "column": 50
                                          }
                                        },
                                        "name": "height"
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 25473,
                                        "end": 25480,
                                        "loc": {
                                          "start": {
                                            "line": 590,
                                            "column": 52
                                          },
                                          "end": {
                                            "line": 590,
                                            "column": 59
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 25473,
                                          "end": 25478,
                                          "loc": {
                                            "start": {
                                              "line": 590,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 590,
                                              "column": 57
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 25474,
                                            "end": 25478,
                                            "loc": {
                                              "start": {
                                                "line": 590,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 590,
                                                "column": 57
                                              }
                                            },
                                            "name": "diam"
                                          }
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 25479,
                                          "end": 25480,
                                          "loc": {
                                            "start": {
                                              "line": 590,
                                              "column": 58
                                            },
                                            "end": {
                                              "line": 590,
                                              "column": 59
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 25482,
                                        "end": 25483,
                                        "loc": {
                                          "start": {
                                            "line": 590,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 590,
                                            "column": 62
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "NewExpression",
                                    "start": 25513,
                                    "end": 25550,
                                    "loc": {
                                      "start": {
                                        "line": 591,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 591,
                                        "column": 63
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 25517,
                                      "end": 25530,
                                      "loc": {
                                        "start": {
                                          "line": 591,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 591,
                                          "column": 43
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 25517,
                                        "end": 25522,
                                        "loc": {
                                          "start": {
                                            "line": 591,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 591,
                                            "column": 35
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 25523,
                                        "end": 25530,
                                        "loc": {
                                          "start": {
                                            "line": 591,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 591,
                                            "column": 43
                                          }
                                        },
                                        "name": "Vector3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 25531,
                                        "end": 25537,
                                        "loc": {
                                          "start": {
                                            "line": 591,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 591,
                                            "column": 50
                                          }
                                        },
                                        "name": "height"
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 25540,
                                        "end": 25546,
                                        "loc": {
                                          "start": {
                                            "line": 591,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 591,
                                            "column": 59
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 25540,
                                          "end": 25544,
                                          "loc": {
                                            "start": {
                                              "line": 591,
                                              "column": 53
                                            },
                                            "end": {
                                              "line": 591,
                                              "column": 57
                                            }
                                          },
                                          "name": "diam"
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 25545,
                                          "end": 25546,
                                          "loc": {
                                            "start": {
                                              "line": 591,
                                              "column": 58
                                            },
                                            "end": {
                                              "line": 591,
                                              "column": 59
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 25548,
                                        "end": 25549,
                                        "loc": {
                                          "start": {
                                            "line": 591,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 591,
                                            "column": 62
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "NewExpression",
                                    "start": 25579,
                                    "end": 25616,
                                    "loc": {
                                      "start": {
                                        "line": 592,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 592,
                                        "column": 63
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 25583,
                                      "end": 25596,
                                      "loc": {
                                        "start": {
                                          "line": 592,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 592,
                                          "column": 43
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 25583,
                                        "end": 25588,
                                        "loc": {
                                          "start": {
                                            "line": 592,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 592,
                                            "column": 35
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 25589,
                                        "end": 25596,
                                        "loc": {
                                          "start": {
                                            "line": 592,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 592,
                                            "column": 43
                                          }
                                        },
                                        "name": "Vector3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 25602,
                                        "end": 25603,
                                        "loc": {
                                          "start": {
                                            "line": 592,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 592,
                                            "column": 50
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 25611,
                                        "end": 25612,
                                        "loc": {
                                          "start": {
                                            "line": 592,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 592,
                                            "column": 59
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 25614,
                                        "end": 25615,
                                        "loc": {
                                          "start": {
                                            "line": 592,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 592,
                                            "column": 62
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 25654,
                              "end": 25783,
                              "loc": {
                                "start": {
                                  "line": 594,
                                  "column": 16
                                },
                                "end": {
                                  "line": 597,
                                  "column": 18
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 25654,
                                "end": 25782,
                                "loc": {
                                  "start": {
                                    "line": 594,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 597,
                                    "column": 17
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 25654,
                                  "end": 25669,
                                  "loc": {
                                    "start": {
                                      "line": 594,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 594,
                                      "column": 31
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 25654,
                                    "end": 25664,
                                    "loc": {
                                      "start": {
                                        "line": 594,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 594,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 25654,
                                      "end": 25658,
                                      "loc": {
                                        "start": {
                                          "line": 594,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 594,
                                          "column": 20
                                        }
                                      },
                                      "name": "geom"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 25659,
                                      "end": 25664,
                                      "loc": {
                                        "start": {
                                          "line": 594,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 594,
                                          "column": 26
                                        }
                                      },
                                      "name": "faces"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 25665,
                                    "end": 25669,
                                    "loc": {
                                      "start": {
                                        "line": 594,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 594,
                                        "column": 31
                                      }
                                    },
                                    "name": "push"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "NewExpression",
                                    "start": 25692,
                                    "end": 25716,
                                    "loc": {
                                      "start": {
                                        "line": 595,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 595,
                                        "column": 44
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 25696,
                                      "end": 25707,
                                      "loc": {
                                        "start": {
                                          "line": 595,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 595,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 25696,
                                        "end": 25701,
                                        "loc": {
                                          "start": {
                                            "line": 595,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 595,
                                            "column": 29
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 25702,
                                        "end": 25707,
                                        "loc": {
                                          "start": {
                                            "line": 595,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 595,
                                            "column": 35
                                          }
                                        },
                                        "name": "Face3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 25708,
                                        "end": 25709,
                                        "loc": {
                                          "start": {
                                            "line": 595,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 595,
                                            "column": 37
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 25711,
                                        "end": 25712,
                                        "loc": {
                                          "start": {
                                            "line": 595,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 595,
                                            "column": 40
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 25714,
                                        "end": 25715,
                                        "loc": {
                                          "start": {
                                            "line": 595,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 595,
                                            "column": 43
                                          }
                                        },
                                        "value": 2,
                                        "rawValue": 2,
                                        "raw": "2"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "NewExpression",
                                    "start": 25739,
                                    "end": 25763,
                                    "loc": {
                                      "start": {
                                        "line": 596,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 596,
                                        "column": 44
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 25743,
                                      "end": 25754,
                                      "loc": {
                                        "start": {
                                          "line": 596,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 596,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 25743,
                                        "end": 25748,
                                        "loc": {
                                          "start": {
                                            "line": 596,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 596,
                                            "column": 29
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 25749,
                                        "end": 25754,
                                        "loc": {
                                          "start": {
                                            "line": 596,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 596,
                                            "column": 35
                                          }
                                        },
                                        "name": "Face3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 25755,
                                        "end": 25756,
                                        "loc": {
                                          "start": {
                                            "line": 596,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 596,
                                            "column": 37
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 25758,
                                        "end": 25759,
                                        "loc": {
                                          "start": {
                                            "line": 596,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 596,
                                            "column": 40
                                          }
                                        },
                                        "value": 2,
                                        "rawValue": 2,
                                        "raw": "2"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 25761,
                                        "end": 25762,
                                        "loc": {
                                          "start": {
                                            "line": 596,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 596,
                                            "column": 43
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 25801,
                              "end": 25827,
                              "loc": {
                                "start": {
                                  "line": 598,
                                  "column": 16
                                },
                                "end": {
                                  "line": 598,
                                  "column": 42
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 25801,
                                "end": 25826,
                                "loc": {
                                  "start": {
                                    "line": 598,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 598,
                                    "column": 41
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 25801,
                                  "end": 25824,
                                  "loc": {
                                    "start": {
                                      "line": 598,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 598,
                                      "column": 39
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 25801,
                                    "end": 25805,
                                    "loc": {
                                      "start": {
                                        "line": 598,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 598,
                                        "column": 20
                                      }
                                    },
                                    "name": "geom"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 25806,
                                    "end": 25824,
                                    "loc": {
                                      "start": {
                                        "line": 598,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 598,
                                        "column": 39
                                      }
                                    },
                                    "name": "computeFaceNormals"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              }
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 25847,
                              "end": 25927,
                              "loc": {
                                "start": {
                                  "line": 600,
                                  "column": 16
                                },
                                "end": {
                                  "line": 600,
                                  "column": 96
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 25851,
                                  "end": 25926,
                                  "loc": {
                                    "start": {
                                      "line": 600,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 600,
                                      "column": 95
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 25851,
                                    "end": 25855,
                                    "loc": {
                                      "start": {
                                        "line": 600,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 600,
                                        "column": 24
                                      }
                                    },
                                    "name": "mesh"
                                  },
                                  "init": {
                                    "type": "NewExpression",
                                    "start": 25858,
                                    "end": 25926,
                                    "loc": {
                                      "start": {
                                        "line": 600,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 600,
                                        "column": 95
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 25862,
                                      "end": 25872,
                                      "loc": {
                                        "start": {
                                          "line": 600,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 600,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 25862,
                                        "end": 25867,
                                        "loc": {
                                          "start": {
                                            "line": 600,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 600,
                                            "column": 36
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 25868,
                                        "end": 25872,
                                        "loc": {
                                          "start": {
                                            "line": 600,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 600,
                                            "column": 41
                                          }
                                        },
                                        "name": "Mesh"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 25873,
                                        "end": 25877,
                                        "loc": {
                                          "start": {
                                            "line": 600,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 600,
                                            "column": 46
                                          }
                                        },
                                        "name": "geom"
                                      },
                                      {
                                        "type": "NewExpression",
                                        "start": 25879,
                                        "end": 25925,
                                        "loc": {
                                          "start": {
                                            "line": 600,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 600,
                                            "column": 94
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 25883,
                                          "end": 25906,
                                          "loc": {
                                            "start": {
                                              "line": 600,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 600,
                                              "column": 75
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 25883,
                                            "end": 25888,
                                            "loc": {
                                              "start": {
                                                "line": 600,
                                                "column": 52
                                              },
                                              "end": {
                                                "line": 600,
                                                "column": 57
                                              }
                                            },
                                            "name": "THREE"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 25889,
                                            "end": 25906,
                                            "loc": {
                                              "start": {
                                                "line": 600,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 600,
                                                "column": 75
                                              }
                                            },
                                            "name": "MeshBasicMaterial"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ObjectExpression",
                                            "start": 25907,
                                            "end": 25924,
                                            "loc": {
                                              "start": {
                                                "line": 600,
                                                "column": 76
                                              },
                                              "end": {
                                                "line": 600,
                                                "column": 93
                                              }
                                            },
                                            "properties": [
                                              {
                                                "type": "Property",
                                                "start": 25908,
                                                "end": 25923,
                                                "loc": {
                                                  "start": {
                                                    "line": 600,
                                                    "column": 77
                                                  },
                                                  "end": {
                                                    "line": 600,
                                                    "column": 92
                                                  }
                                                },
                                                "method": false,
                                                "shorthand": false,
                                                "computed": false,
                                                "key": {
                                                  "type": "Identifier",
                                                  "start": 25908,
                                                  "end": 25913,
                                                  "loc": {
                                                    "start": {
                                                      "line": 600,
                                                      "column": 77
                                                    },
                                                    "end": {
                                                      "line": 600,
                                                      "column": 82
                                                    }
                                                  },
                                                  "name": "color"
                                                },
                                                "value": {
                                                  "type": "Literal",
                                                  "start": 25915,
                                                  "end": 25923,
                                                  "loc": {
                                                    "start": {
                                                      "line": 600,
                                                      "column": 84
                                                    },
                                                    "end": {
                                                      "line": 600,
                                                      "column": 92
                                                    }
                                                  },
                                                  "value": 8388479,
                                                  "rawValue": 8388479,
                                                  "raw": "0x7fff7f"
                                                },
                                                "kind": "init"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                }
                              ],
                              "kind": "var",
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "set position and orientation of arrow",
                                  "start": 25945,
                                  "end": 25984,
                                  "loc": {
                                    "start": {
                                      "line": 601,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 601,
                                      "column": 55
                                    }
                                  },
                                  "range": [
                                    25945,
                                    25984
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26002,
                              "end": 26026,
                              "loc": {
                                "start": {
                                  "line": 602,
                                  "column": 16
                                },
                                "end": {
                                  "line": 602,
                                  "column": 40
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26002,
                                "end": 26025,
                                "loc": {
                                  "start": {
                                    "line": 602,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 602,
                                    "column": 39
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26002,
                                  "end": 26020,
                                  "loc": {
                                    "start": {
                                      "line": 602,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 602,
                                      "column": 34
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 26002,
                                    "end": 26015,
                                    "loc": {
                                      "start": {
                                        "line": 602,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 602,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 26002,
                                      "end": 26006,
                                      "loc": {
                                        "start": {
                                          "line": 602,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 602,
                                          "column": 20
                                        }
                                      },
                                      "name": "mesh",
                                      "leadingComments": null
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 26007,
                                      "end": 26015,
                                      "loc": {
                                        "start": {
                                          "line": 602,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 602,
                                          "column": 29
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false,
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26016,
                                    "end": 26020,
                                    "loc": {
                                      "start": {
                                        "line": 602,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 602,
                                        "column": 34
                                      }
                                    },
                                    "name": "copy"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 26021,
                                    "end": 26024,
                                    "loc": {
                                      "start": {
                                        "line": 602,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 602,
                                        "column": 38
                                      }
                                    },
                                    "name": "pos"
                                  }
                                ],
                                "leadingComments": null
                              },
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "set position and orientation of arrow",
                                  "start": 25945,
                                  "end": 25984,
                                  "loc": {
                                    "start": {
                                      "line": 601,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 601,
                                      "column": 55
                                    }
                                  },
                                  "range": [
                                    25945,
                                    25984
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26044,
                              "end": 26112,
                              "loc": {
                                "start": {
                                  "line": 603,
                                  "column": 16
                                },
                                "end": {
                                  "line": 603,
                                  "column": 84
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26044,
                                "end": 26111,
                                "loc": {
                                  "start": {
                                    "line": 603,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 603,
                                    "column": 83
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26044,
                                  "end": 26078,
                                  "loc": {
                                    "start": {
                                      "line": 603,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 603,
                                      "column": 50
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 26044,
                                    "end": 26059,
                                    "loc": {
                                      "start": {
                                        "line": 603,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 603,
                                        "column": 31
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 26044,
                                      "end": 26048,
                                      "loc": {
                                        "start": {
                                          "line": 603,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 603,
                                          "column": 20
                                        }
                                      },
                                      "name": "mesh"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 26049,
                                      "end": 26059,
                                      "loc": {
                                        "start": {
                                          "line": 603,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 603,
                                          "column": 31
                                        }
                                      },
                                      "name": "quaternion"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26060,
                                    "end": 26078,
                                    "loc": {
                                      "start": {
                                        "line": 603,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 603,
                                        "column": 50
                                      }
                                    },
                                    "name": "setFromUnitVectors"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "NewExpression",
                                    "start": 26079,
                                    "end": 26105,
                                    "loc": {
                                      "start": {
                                        "line": 603,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 603,
                                        "column": 77
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 26083,
                                      "end": 26096,
                                      "loc": {
                                        "start": {
                                          "line": 603,
                                          "column": 55
                                        },
                                        "end": {
                                          "line": 603,
                                          "column": 68
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 26083,
                                        "end": 26088,
                                        "loc": {
                                          "start": {
                                            "line": 603,
                                            "column": 55
                                          },
                                          "end": {
                                            "line": 603,
                                            "column": 60
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 26089,
                                        "end": 26096,
                                        "loc": {
                                          "start": {
                                            "line": 603,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 603,
                                            "column": 68
                                          }
                                        },
                                        "name": "Vector3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 26097,
                                        "end": 26098,
                                        "loc": {
                                          "start": {
                                            "line": 603,
                                            "column": 69
                                          },
                                          "end": {
                                            "line": 603,
                                            "column": 70
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 26100,
                                        "end": 26101,
                                        "loc": {
                                          "start": {
                                            "line": 603,
                                            "column": 72
                                          },
                                          "end": {
                                            "line": 603,
                                            "column": 73
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 26103,
                                        "end": 26104,
                                        "loc": {
                                          "start": {
                                            "line": 603,
                                            "column": 75
                                          },
                                          "end": {
                                            "line": 603,
                                            "column": 76
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 26107,
                                    "end": 26110,
                                    "loc": {
                                      "start": {
                                        "line": 603,
                                        "column": 79
                                      },
                                      "end": {
                                        "line": 603,
                                        "column": 82
                                      }
                                    },
                                    "name": "dir"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26132,
                              "end": 26150,
                              "loc": {
                                "start": {
                                  "line": 605,
                                  "column": 16
                                },
                                "end": {
                                  "line": 605,
                                  "column": 34
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26132,
                                "end": 26149,
                                "loc": {
                                  "start": {
                                    "line": 605,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 605,
                                    "column": 33
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26132,
                                  "end": 26143,
                                  "loc": {
                                    "start": {
                                      "line": 605,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 605,
                                      "column": 27
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 26132,
                                    "end": 26138,
                                    "loc": {
                                      "start": {
                                        "line": 605,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 605,
                                        "column": 22
                                      }
                                    },
                                    "name": "result"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26139,
                                    "end": 26143,
                                    "loc": {
                                      "start": {
                                        "line": 605,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 605,
                                        "column": 27
                                      }
                                    },
                                    "name": "push"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 26144,
                                    "end": 26148,
                                    "loc": {
                                      "start": {
                                        "line": 605,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 605,
                                        "column": 32
                                      }
                                    },
                                    "name": "mesh"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "BreakStatement",
                              "start": 26168,
                              "end": 26174,
                              "loc": {
                                "start": {
                                  "line": 606,
                                  "column": 16
                                },
                                "end": {
                                  "line": 606,
                                  "column": 22
                                }
                              },
                              "label": null
                            }
                          ],
                          "test": {
                            "type": "Literal",
                            "start": 24904,
                            "end": 24910,
                            "loc": {
                              "start": {
                                "line": 580,
                                "column": 17
                              },
                              "end": {
                                "line": 580,
                                "column": 23
                              }
                            },
                            "value": "Cone",
                            "rawValue": "Cone",
                            "raw": "'Cone'"
                          }
                        },
                        {
                          "type": "SwitchCase",
                          "start": 26190,
                          "end": 27673,
                          "loc": {
                            "start": {
                              "line": 608,
                              "column": 12
                            },
                            "end": {
                              "line": 637,
                              "column": 22
                            }
                          },
                          "consequent": [
                            {
                              "type": "IfStatement",
                              "start": 26220,
                              "end": 26248,
                              "loc": {
                                "start": {
                                  "line": 609,
                                  "column": 16
                                },
                                "end": {
                                  "line": 609,
                                  "column": 44
                                }
                              },
                              "test": {
                                "type": "BinaryExpression",
                                "start": 26224,
                                "end": 26240,
                                "loc": {
                                  "start": {
                                    "line": 609,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 609,
                                    "column": 36
                                  }
                                },
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 26224,
                                  "end": 26233,
                                  "loc": {
                                    "start": {
                                      "line": 609,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 609,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 26224,
                                    "end": 26228,
                                    "loc": {
                                      "start": {
                                        "line": 609,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 609,
                                        "column": 24
                                      }
                                    },
                                    "name": "data"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26229,
                                    "end": 26233,
                                    "loc": {
                                      "start": {
                                        "line": 609,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 609,
                                        "column": 29
                                      }
                                    },
                                    "name": "text"
                                  },
                                  "computed": false
                                },
                                "operator": "==",
                                "right": {
                                  "type": "Literal",
                                  "start": 26237,
                                  "end": 26240,
                                  "loc": {
                                    "start": {
                                      "line": 609,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 609,
                                      "column": 36
                                    }
                                  },
                                  "value": "@",
                                  "rawValue": "@",
                                  "raw": "'@'"
                                }
                              },
                              "consequent": {
                                "type": "BreakStatement",
                                "start": 26242,
                                "end": 26248,
                                "loc": {
                                  "start": {
                                    "line": 609,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 609,
                                    "column": 44
                                  }
                                },
                                "label": null,
                                "leadingComments": null,
                                "trailingComments": null
                              },
                              "alternate": null,
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "no idea why this trash comes",
                                  "start": 26249,
                                  "end": 26279,
                                  "loc": {
                                    "start": {
                                      "line": 609,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 609,
                                      "column": 75
                                    }
                                  },
                                  "range": [
                                    26249,
                                    26279
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "note: only following types of text are properly supported:",
                                  "start": 26297,
                                  "end": 26357,
                                  "loc": {
                                    "start": {
                                      "line": 610,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 610,
                                      "column": 76
                                    }
                                  },
                                  "range": [
                                    26297,
                                    26357
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "  textType  = 1   (screen-oriented, fixed-sized text)",
                                  "start": 26375,
                                  "end": 26430,
                                  "loc": {
                                    "start": {
                                      "line": 611,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 611,
                                      "column": 71
                                    }
                                  },
                                  "range": [
                                    26375,
                                    26430
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "  alignment = 0   (left/baseline-aligned text)",
                                  "start": 26448,
                                  "end": 26496,
                                  "loc": {
                                    "start": {
                                      "line": 612,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 612,
                                      "column": 64
                                    }
                                  },
                                  "range": [
                                    26448,
                                    26496
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "create 3D text",
                                  "start": 26516,
                                  "end": 26532,
                                  "loc": {
                                    "start": {
                                      "line": 614,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 614,
                                      "column": 32
                                    }
                                  },
                                  "range": [
                                    26516,
                                    26532
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 26550,
                              "end": 26610,
                              "loc": {
                                "start": {
                                  "line": 615,
                                  "column": 16
                                },
                                "end": {
                                  "line": 615,
                                  "column": 76
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 26554,
                                  "end": 26609,
                                  "loc": {
                                    "start": {
                                      "line": 615,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 615,
                                      "column": 75
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 26554,
                                    "end": 26560,
                                    "loc": {
                                      "start": {
                                        "line": 615,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 615,
                                        "column": 26
                                      }
                                    },
                                    "name": "params",
                                    "leadingComments": null
                                  },
                                  "init": {
                                    "type": "ObjectExpression",
                                    "start": 26563,
                                    "end": 26609,
                                    "loc": {
                                      "start": {
                                        "line": 615,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 615,
                                        "column": 75
                                      }
                                    },
                                    "properties": [
                                      {
                                        "type": "Property",
                                        "start": 26564,
                                        "end": 26571,
                                        "loc": {
                                          "start": {
                                            "line": 615,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 615,
                                            "column": 37
                                          }
                                        },
                                        "method": false,
                                        "shorthand": false,
                                        "computed": false,
                                        "key": {
                                          "type": "Identifier",
                                          "start": 26564,
                                          "end": 26568,
                                          "loc": {
                                            "start": {
                                              "line": 615,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 615,
                                              "column": 34
                                            }
                                          },
                                          "name": "size"
                                        },
                                        "value": {
                                          "type": "Literal",
                                          "start": 26570,
                                          "end": 26571,
                                          "loc": {
                                            "start": {
                                              "line": 615,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 615,
                                              "column": 37
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        },
                                        "kind": "init"
                                      },
                                      {
                                        "type": "Property",
                                        "start": 26573,
                                        "end": 26582,
                                        "loc": {
                                          "start": {
                                            "line": 615,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 615,
                                            "column": 48
                                          }
                                        },
                                        "method": false,
                                        "shorthand": false,
                                        "computed": false,
                                        "key": {
                                          "type": "Identifier",
                                          "start": 26573,
                                          "end": 26579,
                                          "loc": {
                                            "start": {
                                              "line": 615,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 615,
                                              "column": 45
                                            }
                                          },
                                          "name": "height"
                                        },
                                        "value": {
                                          "type": "Literal",
                                          "start": 26581,
                                          "end": 26582,
                                          "loc": {
                                            "start": {
                                              "line": 615,
                                              "column": 47
                                            },
                                            "end": {
                                              "line": 615,
                                              "column": 48
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        "kind": "init"
                                      },
                                      {
                                        "type": "Property",
                                        "start": 26584,
                                        "end": 26608,
                                        "loc": {
                                          "start": {
                                            "line": 615,
                                            "column": 50
                                          },
                                          "end": {
                                            "line": 615,
                                            "column": 74
                                          }
                                        },
                                        "method": false,
                                        "shorthand": false,
                                        "computed": false,
                                        "key": {
                                          "type": "Identifier",
                                          "start": 26584,
                                          "end": 26588,
                                          "loc": {
                                            "start": {
                                              "line": 615,
                                              "column": 50
                                            },
                                            "end": {
                                              "line": 615,
                                              "column": 54
                                            }
                                          },
                                          "name": "font"
                                        },
                                        "value": {
                                          "type": "MemberExpression",
                                          "start": 26590,
                                          "end": 26608,
                                          "loc": {
                                            "start": {
                                              "line": 615,
                                              "column": 56
                                            },
                                            "end": {
                                              "line": 615,
                                              "column": 74
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 26590,
                                            "end": 26603,
                                            "loc": {
                                              "start": {
                                                "line": 615,
                                                "column": 56
                                              },
                                              "end": {
                                                "line": 615,
                                                "column": 69
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 26590,
                                              "end": 26594,
                                              "loc": {
                                                "start": {
                                                  "line": 615,
                                                  "column": 56
                                                },
                                                "end": {
                                                  "line": 615,
                                                  "column": 60
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 26595,
                                              "end": 26603,
                                              "loc": {
                                                "start": {
                                                  "line": 615,
                                                  "column": 61
                                                },
                                                "end": {
                                                  "line": 615,
                                                  "column": 69
                                                }
                                              },
                                              "name": "sketcher"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 26604,
                                            "end": 26608,
                                            "loc": {
                                              "start": {
                                                "line": 615,
                                                "column": 70
                                              },
                                              "end": {
                                                "line": 615,
                                                "column": 74
                                              }
                                            },
                                            "name": "font"
                                          },
                                          "computed": false
                                        },
                                        "kind": "init"
                                      }
                                    ]
                                  },
                                  "leadingComments": null
                                }
                              ],
                              "kind": "var",
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "no idea why this trash comes",
                                  "start": 26249,
                                  "end": 26279,
                                  "loc": {
                                    "start": {
                                      "line": 609,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 609,
                                      "column": 75
                                    }
                                  },
                                  "range": [
                                    26249,
                                    26279
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "note: only following types of text are properly supported:",
                                  "start": 26297,
                                  "end": 26357,
                                  "loc": {
                                    "start": {
                                      "line": 610,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 610,
                                      "column": 76
                                    }
                                  },
                                  "range": [
                                    26297,
                                    26357
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "  textType  = 1   (screen-oriented, fixed-sized text)",
                                  "start": 26375,
                                  "end": 26430,
                                  "loc": {
                                    "start": {
                                      "line": 611,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 611,
                                      "column": 71
                                    }
                                  },
                                  "range": [
                                    26375,
                                    26430
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "  alignment = 0   (left/baseline-aligned text)",
                                  "start": 26448,
                                  "end": 26496,
                                  "loc": {
                                    "start": {
                                      "line": 612,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 612,
                                      "column": 64
                                    }
                                  },
                                  "range": [
                                    26448,
                                    26496
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "create 3D text",
                                  "start": 26516,
                                  "end": 26532,
                                  "loc": {
                                    "start": {
                                      "line": 614,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 614,
                                      "column": 32
                                    }
                                  },
                                  "range": [
                                    26516,
                                    26532
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 26628,
                              "end": 26681,
                              "loc": {
                                "start": {
                                  "line": 616,
                                  "column": 16
                                },
                                "end": {
                                  "line": 616,
                                  "column": 69
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 26632,
                                  "end": 26680,
                                  "loc": {
                                    "start": {
                                      "line": 616,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 616,
                                      "column": 68
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 26632,
                                    "end": 26636,
                                    "loc": {
                                      "start": {
                                        "line": 616,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 616,
                                        "column": 24
                                      }
                                    },
                                    "name": "geom"
                                  },
                                  "init": {
                                    "type": "NewExpression",
                                    "start": 26639,
                                    "end": 26680,
                                    "loc": {
                                      "start": {
                                        "line": 616,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 616,
                                        "column": 68
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 26643,
                                      "end": 26661,
                                      "loc": {
                                        "start": {
                                          "line": 616,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 616,
                                          "column": 49
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 26643,
                                        "end": 26648,
                                        "loc": {
                                          "start": {
                                            "line": 616,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 616,
                                            "column": 36
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 26649,
                                        "end": 26661,
                                        "loc": {
                                          "start": {
                                            "line": 616,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 616,
                                            "column": 49
                                          }
                                        },
                                        "name": "TextGeometry"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 26662,
                                        "end": 26671,
                                        "loc": {
                                          "start": {
                                            "line": 616,
                                            "column": 50
                                          },
                                          "end": {
                                            "line": 616,
                                            "column": 59
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 26662,
                                          "end": 26666,
                                          "loc": {
                                            "start": {
                                              "line": 616,
                                              "column": 50
                                            },
                                            "end": {
                                              "line": 616,
                                              "column": 54
                                            }
                                          },
                                          "name": "data"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 26667,
                                          "end": 26671,
                                          "loc": {
                                            "start": {
                                              "line": 616,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 616,
                                              "column": 59
                                            }
                                          },
                                          "name": "text"
                                        },
                                        "computed": false
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 26673,
                                        "end": 26679,
                                        "loc": {
                                          "start": {
                                            "line": 616,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 616,
                                            "column": 67
                                          }
                                        },
                                        "name": "params"
                                      }
                                    ]
                                  }
                                }
                              ],
                              "kind": "var"
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26699,
                              "end": 26725,
                              "loc": {
                                "start": {
                                  "line": 617,
                                  "column": 16
                                },
                                "end": {
                                  "line": 617,
                                  "column": 42
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26699,
                                "end": 26724,
                                "loc": {
                                  "start": {
                                    "line": 617,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 617,
                                    "column": 41
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26699,
                                  "end": 26722,
                                  "loc": {
                                    "start": {
                                      "line": 617,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 617,
                                      "column": 39
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 26699,
                                    "end": 26703,
                                    "loc": {
                                      "start": {
                                        "line": 617,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 617,
                                        "column": 20
                                      }
                                    },
                                    "name": "geom"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26704,
                                    "end": 26722,
                                    "loc": {
                                      "start": {
                                        "line": 617,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 617,
                                        "column": 39
                                      }
                                    },
                                    "name": "computeBoundingBox"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "for debugging",
                                  "start": 26727,
                                  "end": 26742,
                                  "loc": {
                                    "start": {
                                      "line": 617,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 617,
                                      "column": 59
                                    }
                                  },
                                  "range": [
                                    26727,
                                    26742
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 26760,
                              "end": 26840,
                              "loc": {
                                "start": {
                                  "line": 618,
                                  "column": 16
                                },
                                "end": {
                                  "line": 618,
                                  "column": 96
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 26764,
                                  "end": 26839,
                                  "loc": {
                                    "start": {
                                      "line": 618,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 618,
                                      "column": 95
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 26764,
                                    "end": 26768,
                                    "loc": {
                                      "start": {
                                        "line": 618,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 618,
                                        "column": 24
                                      }
                                    },
                                    "name": "mesh",
                                    "leadingComments": null
                                  },
                                  "init": {
                                    "type": "NewExpression",
                                    "start": 26771,
                                    "end": 26839,
                                    "loc": {
                                      "start": {
                                        "line": 618,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 618,
                                        "column": 95
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 26775,
                                      "end": 26785,
                                      "loc": {
                                        "start": {
                                          "line": 618,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 618,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 26775,
                                        "end": 26780,
                                        "loc": {
                                          "start": {
                                            "line": 618,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 618,
                                            "column": 36
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 26781,
                                        "end": 26785,
                                        "loc": {
                                          "start": {
                                            "line": 618,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 618,
                                            "column": 41
                                          }
                                        },
                                        "name": "Mesh"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 26786,
                                        "end": 26790,
                                        "loc": {
                                          "start": {
                                            "line": 618,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 618,
                                            "column": 46
                                          }
                                        },
                                        "name": "geom"
                                      },
                                      {
                                        "type": "NewExpression",
                                        "start": 26792,
                                        "end": 26838,
                                        "loc": {
                                          "start": {
                                            "line": 618,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 618,
                                            "column": 94
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 26796,
                                          "end": 26819,
                                          "loc": {
                                            "start": {
                                              "line": 618,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 618,
                                              "column": 75
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 26796,
                                            "end": 26801,
                                            "loc": {
                                              "start": {
                                                "line": 618,
                                                "column": 52
                                              },
                                              "end": {
                                                "line": 618,
                                                "column": 57
                                              }
                                            },
                                            "name": "THREE"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 26802,
                                            "end": 26819,
                                            "loc": {
                                              "start": {
                                                "line": 618,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 618,
                                                "column": 75
                                              }
                                            },
                                            "name": "MeshBasicMaterial"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ObjectExpression",
                                            "start": 26820,
                                            "end": 26837,
                                            "loc": {
                                              "start": {
                                                "line": 618,
                                                "column": 76
                                              },
                                              "end": {
                                                "line": 618,
                                                "column": 93
                                              }
                                            },
                                            "properties": [
                                              {
                                                "type": "Property",
                                                "start": 26821,
                                                "end": 26836,
                                                "loc": {
                                                  "start": {
                                                    "line": 618,
                                                    "column": 77
                                                  },
                                                  "end": {
                                                    "line": 618,
                                                    "column": 92
                                                  }
                                                },
                                                "method": false,
                                                "shorthand": false,
                                                "computed": false,
                                                "key": {
                                                  "type": "Identifier",
                                                  "start": 26821,
                                                  "end": 26826,
                                                  "loc": {
                                                    "start": {
                                                      "line": 618,
                                                      "column": 77
                                                    },
                                                    "end": {
                                                      "line": 618,
                                                      "column": 82
                                                    }
                                                  },
                                                  "name": "color"
                                                },
                                                "value": {
                                                  "type": "Literal",
                                                  "start": 26828,
                                                  "end": 26836,
                                                  "loc": {
                                                    "start": {
                                                      "line": 618,
                                                      "column": 84
                                                    },
                                                    "end": {
                                                      "line": 618,
                                                      "column": 92
                                                    }
                                                  },
                                                  "value": 4194239,
                                                  "rawValue": 4194239,
                                                  "raw": "0x3fffbf"
                                                },
                                                "kind": "init"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  },
                                  "leadingComments": null
                                }
                              ],
                              "kind": "var",
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "for debugging",
                                  "start": 26727,
                                  "end": 26742,
                                  "loc": {
                                    "start": {
                                      "line": 617,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 617,
                                      "column": 59
                                    }
                                  },
                                  "range": [
                                    26727,
                                    26742
                                  ]
                                }
                              ],
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "set position in sketch coordinates",
                                  "start": 26858,
                                  "end": 26894,
                                  "loc": {
                                    "start": {
                                      "line": 619,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 619,
                                      "column": 52
                                    }
                                  },
                                  "range": [
                                    26858,
                                    26894
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 26912,
                              "end": 26943,
                              "loc": {
                                "start": {
                                  "line": 620,
                                  "column": 16
                                },
                                "end": {
                                  "line": 620,
                                  "column": 47
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 26916,
                                  "end": 26942,
                                  "loc": {
                                    "start": {
                                      "line": 620,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 620,
                                      "column": 46
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 26916,
                                    "end": 26919,
                                    "loc": {
                                      "start": {
                                        "line": 620,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 620,
                                        "column": 23
                                      }
                                    },
                                    "name": "obj",
                                    "leadingComments": null
                                  },
                                  "init": {
                                    "type": "NewExpression",
                                    "start": 26922,
                                    "end": 26942,
                                    "loc": {
                                      "start": {
                                        "line": 620,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 620,
                                        "column": 46
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 26926,
                                      "end": 26940,
                                      "loc": {
                                        "start": {
                                          "line": 620,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 620,
                                          "column": 44
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 26926,
                                        "end": 26931,
                                        "loc": {
                                          "start": {
                                            "line": 620,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 620,
                                            "column": 35
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 26932,
                                        "end": 26940,
                                        "loc": {
                                          "start": {
                                            "line": 620,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 620,
                                            "column": 44
                                          }
                                        },
                                        "name": "Object3D"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  "leadingComments": null
                                }
                              ],
                              "kind": "var",
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "set position in sketch coordinates",
                                  "start": 26858,
                                  "end": 26894,
                                  "loc": {
                                    "start": {
                                      "line": 619,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 619,
                                      "column": 52
                                    }
                                  },
                                  "range": [
                                    26858,
                                    26894
                                  ]
                                }
                              ],
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "obj.fullName = factoryPart.name;\t//no idea what it is...",
                                  "start": 26961,
                                  "end": 27019,
                                  "loc": {
                                    "start": {
                                      "line": 621,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 621,
                                      "column": 74
                                    }
                                  },
                                  "range": [
                                    26961,
                                    27019
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 27037,
                              "end": 27053,
                              "loc": {
                                "start": {
                                  "line": 622,
                                  "column": 16
                                },
                                "end": {
                                  "line": 622,
                                  "column": 32
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 27037,
                                "end": 27052,
                                "loc": {
                                  "start": {
                                    "line": 622,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 622,
                                    "column": 31
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 27037,
                                  "end": 27045,
                                  "loc": {
                                    "start": {
                                      "line": 622,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 622,
                                      "column": 24
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 27037,
                                    "end": 27040,
                                    "loc": {
                                      "start": {
                                        "line": 622,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 622,
                                        "column": 19
                                      }
                                    },
                                    "name": "obj",
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 27041,
                                    "end": 27045,
                                    "loc": {
                                      "start": {
                                        "line": 622,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 622,
                                        "column": 24
                                      }
                                    },
                                    "name": "mesh"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "right": {
                                  "type": "Identifier",
                                  "start": 27048,
                                  "end": 27052,
                                  "loc": {
                                    "start": {
                                      "line": 622,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 622,
                                      "column": 31
                                    }
                                  },
                                  "name": "mesh"
                                },
                                "leadingComments": null
                              },
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "obj.fullName = factoryPart.name;\t//no idea what it is...",
                                  "start": 26961,
                                  "end": 27019,
                                  "loc": {
                                    "start": {
                                      "line": 621,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 621,
                                      "column": 74
                                    }
                                  },
                                  "range": [
                                    26961,
                                    27019
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 27071,
                              "end": 27085,
                              "loc": {
                                "start": {
                                  "line": 623,
                                  "column": 16
                                },
                                "end": {
                                  "line": 623,
                                  "column": 30
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 27071,
                                "end": 27084,
                                "loc": {
                                  "start": {
                                    "line": 623,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 623,
                                    "column": 29
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 27071,
                                  "end": 27078,
                                  "loc": {
                                    "start": {
                                      "line": 623,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 623,
                                      "column": 23
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 27071,
                                    "end": 27074,
                                    "loc": {
                                      "start": {
                                        "line": 623,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 623,
                                        "column": 19
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 27075,
                                    "end": 27078,
                                    "loc": {
                                      "start": {
                                        "line": 623,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 623,
                                        "column": 23
                                      }
                                    },
                                    "name": "add"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 27079,
                                    "end": 27083,
                                    "loc": {
                                      "start": {
                                        "line": 623,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 623,
                                        "column": 28
                                      }
                                    },
                                    "name": "mesh"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 27103,
                              "end": 27168,
                              "loc": {
                                "start": {
                                  "line": 624,
                                  "column": 16
                                },
                                "end": {
                                  "line": 624,
                                  "column": 81
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 27103,
                                "end": 27167,
                                "loc": {
                                  "start": {
                                    "line": 624,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 624,
                                    "column": 80
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 27103,
                                  "end": 27153,
                                  "loc": {
                                    "start": {
                                      "line": 624,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 624,
                                      "column": 66
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 27103,
                                    "end": 27140,
                                    "loc": {
                                      "start": {
                                        "line": 624,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 624,
                                        "column": 53
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 27103,
                                      "end": 27125,
                                      "loc": {
                                        "start": {
                                          "line": 624,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 624,
                                          "column": 38
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 27103,
                                        "end": 27115,
                                        "loc": {
                                          "start": {
                                            "line": 624,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 624,
                                            "column": 28
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 27103,
                                          "end": 27106,
                                          "loc": {
                                            "start": {
                                              "line": 624,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 624,
                                              "column": 19
                                            }
                                          },
                                          "name": "obj"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 27107,
                                          "end": 27115,
                                          "loc": {
                                            "start": {
                                              "line": 624,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 624,
                                              "column": 28
                                            }
                                          },
                                          "name": "position"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 27116,
                                        "end": 27125,
                                        "loc": {
                                          "start": {
                                            "line": 624,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 624,
                                            "column": 38
                                          }
                                        },
                                        "name": "fromArray"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 27126,
                                        "end": 27139,
                                        "loc": {
                                          "start": {
                                            "line": 624,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 624,
                                            "column": 52
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 27126,
                                          "end": 27130,
                                          "loc": {
                                            "start": {
                                              "line": 624,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 624,
                                              "column": 43
                                            }
                                          },
                                          "name": "data"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 27131,
                                          "end": 27139,
                                          "loc": {
                                            "start": {
                                              "line": 624,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 624,
                                              "column": 52
                                            }
                                          },
                                          "name": "position"
                                        },
                                        "computed": false
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 27141,
                                    "end": 27153,
                                    "loc": {
                                      "start": {
                                        "line": 624,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 624,
                                        "column": 66
                                      }
                                    },
                                    "name": "applyMatrix4"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 27154,
                                    "end": 27166,
                                    "loc": {
                                      "start": {
                                        "line": 624,
                                        "column": 67
                                      },
                                      "end": {
                                        "line": 624,
                                        "column": 79
                                      }
                                    },
                                    "name": "worldToLocal"
                                  }
                                ]
                              },
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "add pixel-based sizing",
                                  "start": 27188,
                                  "end": 27212,
                                  "loc": {
                                    "start": {
                                      "line": 626,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 626,
                                      "column": 40
                                    }
                                  },
                                  "range": [
                                    27188,
                                    27212
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 27230,
                              "end": 27376,
                              "loc": {
                                "start": {
                                  "line": 627,
                                  "column": 16
                                },
                                "end": {
                                  "line": 630,
                                  "column": 18
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 27230,
                                "end": 27375,
                                "loc": {
                                  "start": {
                                    "line": 627,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 630,
                                    "column": 17
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 27230,
                                  "end": 27246,
                                  "loc": {
                                    "start": {
                                      "line": 627,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 627,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 27230,
                                    "end": 27233,
                                    "loc": {
                                      "start": {
                                        "line": 627,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 627,
                                        "column": 19
                                      }
                                    },
                                    "name": "obj",
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 27234,
                                    "end": 27246,
                                    "loc": {
                                      "start": {
                                        "line": 627,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 627,
                                        "column": 32
                                      }
                                    },
                                    "name": "setGeomSizes"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "right": {
                                  "type": "FunctionExpression",
                                  "start": 27249,
                                  "end": 27375,
                                  "loc": {
                                    "start": {
                                      "line": 627,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 630,
                                      "column": 17
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 27258,
                                      "end": 27263,
                                      "loc": {
                                        "start": {
                                          "line": 627,
                                          "column": 44
                                        },
                                        "end": {
                                          "line": 627,
                                          "column": 49
                                        }
                                      },
                                      "name": "sizes"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 27265,
                                    "end": 27375,
                                    "loc": {
                                      "start": {
                                        "line": 627,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 630,
                                        "column": 17
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 27288,
                                        "end": 27305,
                                        "loc": {
                                          "start": {
                                            "line": 628,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 628,
                                            "column": 37
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 27292,
                                            "end": 27304,
                                            "loc": {
                                              "start": {
                                                "line": 628,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 628,
                                                "column": 36
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 27292,
                                              "end": 27293,
                                              "loc": {
                                                "start": {
                                                  "line": 628,
                                                  "column": 24
                                                },
                                                "end": {
                                                  "line": 628,
                                                  "column": 25
                                                }
                                              },
                                              "name": "s"
                                            },
                                            "init": {
                                              "type": "MemberExpression",
                                              "start": 27296,
                                              "end": 27304,
                                              "loc": {
                                                "start": {
                                                  "line": 628,
                                                  "column": 28
                                                },
                                                "end": {
                                                  "line": 628,
                                                  "column": 36
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 27296,
                                                "end": 27301,
                                                "loc": {
                                                  "start": {
                                                    "line": 628,
                                                    "column": 28
                                                  },
                                                  "end": {
                                                    "line": 628,
                                                    "column": 33
                                                  }
                                                },
                                                "name": "sizes"
                                              },
                                              "property": {
                                                "type": "Literal",
                                                "start": 27302,
                                                "end": 27303,
                                                "loc": {
                                                  "start": {
                                                    "line": 628,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 628,
                                                    "column": 35
                                                  }
                                                },
                                                "value": 0,
                                                "rawValue": 0,
                                                "raw": "0"
                                              },
                                              "computed": true
                                            }
                                          }
                                        ],
                                        "kind": "var"
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 27327,
                                        "end": 27356,
                                        "loc": {
                                          "start": {
                                            "line": 629,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 629,
                                            "column": 49
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 27327,
                                          "end": 27355,
                                          "loc": {
                                            "start": {
                                              "line": 629,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 629,
                                              "column": 48
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 27327,
                                            "end": 27346,
                                            "loc": {
                                              "start": {
                                                "line": 629,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 629,
                                                "column": 39
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 27327,
                                              "end": 27342,
                                              "loc": {
                                                "start": {
                                                  "line": 629,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 629,
                                                  "column": 35
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 27327,
                                                "end": 27336,
                                                "loc": {
                                                  "start": {
                                                    "line": 629,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 629,
                                                    "column": 29
                                                  }
                                                },
                                                "object": {
                                                  "type": "ThisExpression",
                                                  "start": 27327,
                                                  "end": 27331,
                                                  "loc": {
                                                    "start": {
                                                      "line": 629,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 629,
                                                      "column": 24
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 27332,
                                                  "end": 27336,
                                                  "loc": {
                                                    "start": {
                                                      "line": 629,
                                                      "column": 25
                                                    },
                                                    "end": {
                                                      "line": 629,
                                                      "column": 29
                                                    }
                                                  },
                                                  "name": "mesh"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 27337,
                                                "end": 27342,
                                                "loc": {
                                                  "start": {
                                                    "line": 629,
                                                    "column": 30
                                                  },
                                                  "end": {
                                                    "line": 629,
                                                    "column": 35
                                                  }
                                                },
                                                "name": "scale"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 27343,
                                              "end": 27346,
                                              "loc": {
                                                "start": {
                                                  "line": 629,
                                                  "column": 36
                                                },
                                                "end": {
                                                  "line": 629,
                                                  "column": 39
                                                }
                                              },
                                              "name": "set"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 27347,
                                              "end": 27348,
                                              "loc": {
                                                "start": {
                                                  "line": 629,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 629,
                                                  "column": 41
                                                }
                                              },
                                              "name": "s"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 27350,
                                              "end": 27351,
                                              "loc": {
                                                "start": {
                                                  "line": 629,
                                                  "column": 43
                                                },
                                                "end": {
                                                  "line": 629,
                                                  "column": 44
                                                }
                                              },
                                              "name": "s"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 27353,
                                              "end": 27354,
                                              "loc": {
                                                "start": {
                                                  "line": 629,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 629,
                                                  "column": 47
                                                }
                                              },
                                              "name": "s"
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                },
                                "leadingComments": null
                              },
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "add pixel-based sizing",
                                  "start": 27188,
                                  "end": 27212,
                                  "loc": {
                                    "start": {
                                      "line": 626,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 626,
                                      "column": 40
                                    }
                                  },
                                  "range": [
                                    27188,
                                    27212
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 27394,
                              "end": 27458,
                              "loc": {
                                "start": {
                                  "line": 631,
                                  "column": 16
                                },
                                "end": {
                                  "line": 631,
                                  "column": 80
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 27394,
                                "end": 27457,
                                "loc": {
                                  "start": {
                                    "line": 631,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 631,
                                    "column": 79
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 27394,
                                  "end": 27431,
                                  "loc": {
                                    "start": {
                                      "line": 631,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 631,
                                      "column": 53
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 27394,
                                    "end": 27426,
                                    "loc": {
                                      "start": {
                                        "line": 631,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 631,
                                        "column": 48
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 27394,
                                      "end": 27402,
                                      "loc": {
                                        "start": {
                                          "line": 631,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 631,
                                          "column": 24
                                        }
                                      },
                                      "name": "Sketcher"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 27403,
                                      "end": 27426,
                                      "loc": {
                                        "start": {
                                          "line": 631,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 631,
                                          "column": 48
                                        }
                                      },
                                      "name": "mixinPixelSizedGeometry"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 27427,
                                    "end": 27431,
                                    "loc": {
                                      "start": {
                                        "line": 631,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 631,
                                        "column": 53
                                      }
                                    },
                                    "name": "call"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 27432,
                                    "end": 27435,
                                    "loc": {
                                      "start": {
                                        "line": 631,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 631,
                                        "column": 57
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  {
                                    "type": "LogicalExpression",
                                    "start": 27437,
                                    "end": 27456,
                                    "loc": {
                                      "start": {
                                        "line": 631,
                                        "column": 59
                                      },
                                      "end": {
                                        "line": 631,
                                        "column": 78
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 27437,
                                      "end": 27450,
                                      "loc": {
                                        "start": {
                                          "line": 631,
                                          "column": 59
                                        },
                                        "end": {
                                          "line": 631,
                                          "column": 72
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 27437,
                                        "end": 27441,
                                        "loc": {
                                          "start": {
                                            "line": 631,
                                            "column": 59
                                          },
                                          "end": {
                                            "line": 631,
                                            "column": 63
                                          }
                                        },
                                        "name": "data"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 27442,
                                        "end": 27450,
                                        "loc": {
                                          "start": {
                                            "line": 631,
                                            "column": 64
                                          },
                                          "end": {
                                            "line": 631,
                                            "column": 72
                                          }
                                        },
                                        "name": "fontSize"
                                      },
                                      "computed": false
                                    },
                                    "operator": "||",
                                    "right": {
                                      "type": "Literal",
                                      "start": 27454,
                                      "end": 27456,
                                      "loc": {
                                        "start": {
                                          "line": 631,
                                          "column": 76
                                        },
                                        "end": {
                                          "line": 631,
                                          "column": 78
                                        }
                                      },
                                      "value": 12,
                                      "rawValue": 12,
                                      "raw": "12"
                                    }
                                  }
                                ]
                              },
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "register automatic updates",
                                  "start": 27476,
                                  "end": 27504,
                                  "loc": {
                                    "start": {
                                      "line": 632,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 632,
                                      "column": 44
                                    }
                                  },
                                  "range": [
                                    27476,
                                    27504
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 27522,
                              "end": 27552,
                              "loc": {
                                "start": {
                                  "line": 633,
                                  "column": 16
                                },
                                "end": {
                                  "line": 633,
                                  "column": 46
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 27526,
                                  "end": 27551,
                                  "loc": {
                                    "start": {
                                      "line": 633,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 633,
                                      "column": 45
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 27526,
                                    "end": 27530,
                                    "loc": {
                                      "start": {
                                        "line": 633,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 633,
                                        "column": 24
                                      }
                                    },
                                    "name": "view",
                                    "leadingComments": null
                                  },
                                  "init": {
                                    "type": "MemberExpression",
                                    "start": 27533,
                                    "end": 27551,
                                    "loc": {
                                      "start": {
                                        "line": 633,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 633,
                                        "column": 45
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 27533,
                                      "end": 27546,
                                      "loc": {
                                        "start": {
                                          "line": 633,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 633,
                                          "column": 40
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 27533,
                                        "end": 27537,
                                        "loc": {
                                          "start": {
                                            "line": 633,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 633,
                                            "column": 31
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 27538,
                                        "end": 27546,
                                        "loc": {
                                          "start": {
                                            "line": 633,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 633,
                                            "column": 40
                                          }
                                        },
                                        "name": "sketcher"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 27547,
                                      "end": 27551,
                                      "loc": {
                                        "start": {
                                          "line": 633,
                                          "column": 41
                                        },
                                        "end": {
                                          "line": 633,
                                          "column": 45
                                        }
                                      },
                                      "name": "view"
                                    },
                                    "computed": false
                                  },
                                  "leadingComments": null
                                }
                              ],
                              "kind": "var",
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "register automatic updates",
                                  "start": 27476,
                                  "end": 27504,
                                  "loc": {
                                    "start": {
                                      "line": 632,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 632,
                                      "column": 44
                                    }
                                  },
                                  "range": [
                                    27476,
                                    27504
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 27570,
                              "end": 27612,
                              "loc": {
                                "start": {
                                  "line": 634,
                                  "column": 16
                                },
                                "end": {
                                  "line": 634,
                                  "column": 58
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 27570,
                                "end": 27611,
                                "loc": {
                                  "start": {
                                    "line": 634,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 634,
                                    "column": 57
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 27570,
                                  "end": 27600,
                                  "loc": {
                                    "start": {
                                      "line": 634,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 634,
                                      "column": 46
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 27570,
                                    "end": 27578,
                                    "loc": {
                                      "start": {
                                        "line": 634,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 634,
                                        "column": 24
                                      }
                                    },
                                    "name": "Sketcher"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 27579,
                                    "end": 27600,
                                    "loc": {
                                      "start": {
                                        "line": 634,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 634,
                                        "column": 46
                                      }
                                    },
                                    "name": "registerVisualization"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 27601,
                                    "end": 27605,
                                    "loc": {
                                      "start": {
                                        "line": 634,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 634,
                                        "column": 51
                                      }
                                    },
                                    "name": "view"
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 27607,
                                    "end": 27610,
                                    "loc": {
                                      "start": {
                                        "line": 634,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 634,
                                        "column": 56
                                      }
                                    },
                                    "name": "obj"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 27632,
                              "end": 27649,
                              "loc": {
                                "start": {
                                  "line": 636,
                                  "column": 16
                                },
                                "end": {
                                  "line": 636,
                                  "column": 33
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 27632,
                                "end": 27648,
                                "loc": {
                                  "start": {
                                    "line": 636,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 636,
                                    "column": 32
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 27632,
                                  "end": 27643,
                                  "loc": {
                                    "start": {
                                      "line": 636,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 636,
                                      "column": 27
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 27632,
                                    "end": 27638,
                                    "loc": {
                                      "start": {
                                        "line": 636,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 636,
                                        "column": 22
                                      }
                                    },
                                    "name": "result"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 27639,
                                    "end": 27643,
                                    "loc": {
                                      "start": {
                                        "line": 636,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 636,
                                        "column": 27
                                      }
                                    },
                                    "name": "push"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 27644,
                                    "end": 27647,
                                    "loc": {
                                      "start": {
                                        "line": 636,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 636,
                                        "column": 31
                                      }
                                    },
                                    "name": "obj"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "BreakStatement",
                              "start": 27667,
                              "end": 27673,
                              "loc": {
                                "start": {
                                  "line": 637,
                                  "column": 16
                                },
                                "end": {
                                  "line": 637,
                                  "column": 22
                                }
                              },
                              "label": null
                            }
                          ],
                          "test": {
                            "type": "Literal",
                            "start": 26195,
                            "end": 26201,
                            "loc": {
                              "start": {
                                "line": 608,
                                "column": 17
                              },
                              "end": {
                                "line": 608,
                                "column": 23
                              }
                            },
                            "value": "Text",
                            "rawValue": "Text",
                            "raw": "'Text'"
                          }
                        },
                        {
                          "type": "SwitchCase",
                          "start": 27689,
                          "end": 27900,
                          "loc": {
                            "start": {
                              "line": 639,
                              "column": 12
                            },
                            "end": {
                              "line": 643,
                              "column": 22
                            }
                          },
                          "consequent": [
                            {
                              "type": "ExpressionStatement",
                              "start": 27719,
                              "end": 27759,
                              "loc": {
                                "start": {
                                  "line": 640,
                                  "column": 16
                                },
                                "end": {
                                  "line": 640,
                                  "column": 56
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 27719,
                                "end": 27758,
                                "loc": {
                                  "start": {
                                    "line": 640,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 640,
                                    "column": 55
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 27719,
                                  "end": 27744,
                                  "loc": {
                                    "start": {
                                      "line": 640,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 640,
                                      "column": 41
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 27719,
                                    "end": 27732,
                                    "loc": {
                                      "start": {
                                        "line": 640,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 640,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 27719,
                                      "end": 27723,
                                      "loc": {
                                        "start": {
                                          "line": 640,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 640,
                                          "column": 20
                                        }
                                      },
                                      "name": "data"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 27724,
                                      "end": 27732,
                                      "loc": {
                                        "start": {
                                          "line": 640,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 640,
                                          "column": 29
                                        }
                                      },
                                      "name": "geometry"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 27733,
                                    "end": 27744,
                                    "loc": {
                                      "start": {
                                        "line": 640,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 640,
                                        "column": 41
                                      }
                                    },
                                    "name": "applyMatrix"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 27745,
                                    "end": 27757,
                                    "loc": {
                                      "start": {
                                        "line": 640,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 640,
                                        "column": 54
                                      }
                                    },
                                    "name": "worldToLocal"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 27777,
                              "end": 27840,
                              "loc": {
                                "start": {
                                  "line": 641,
                                  "column": 16
                                },
                                "end": {
                                  "line": 641,
                                  "column": 79
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 27777,
                                "end": 27839,
                                "loc": {
                                  "start": {
                                    "line": 641,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 641,
                                    "column": 78
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 27777,
                                  "end": 27790,
                                  "loc": {
                                    "start": {
                                      "line": 641,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 641,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 27777,
                                    "end": 27781,
                                    "loc": {
                                      "start": {
                                        "line": 641,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 641,
                                        "column": 20
                                      }
                                    },
                                    "name": "data"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 27782,
                                    "end": 27790,
                                    "loc": {
                                      "start": {
                                        "line": 641,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 641,
                                        "column": 29
                                      }
                                    },
                                    "name": "material"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "NewExpression",
                                  "start": 27793,
                                  "end": 27839,
                                  "loc": {
                                    "start": {
                                      "line": 641,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 641,
                                      "column": 78
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 27797,
                                    "end": 27820,
                                    "loc": {
                                      "start": {
                                        "line": 641,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 641,
                                        "column": 59
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 27797,
                                      "end": 27802,
                                      "loc": {
                                        "start": {
                                          "line": 641,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 641,
                                          "column": 41
                                        }
                                      },
                                      "name": "THREE"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 27803,
                                      "end": 27820,
                                      "loc": {
                                        "start": {
                                          "line": 641,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 641,
                                          "column": 59
                                        }
                                      },
                                      "name": "MeshBasicMaterial"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "ObjectExpression",
                                      "start": 27821,
                                      "end": 27838,
                                      "loc": {
                                        "start": {
                                          "line": 641,
                                          "column": 60
                                        },
                                        "end": {
                                          "line": 641,
                                          "column": 77
                                        }
                                      },
                                      "properties": [
                                        {
                                          "type": "Property",
                                          "start": 27822,
                                          "end": 27837,
                                          "loc": {
                                            "start": {
                                              "line": 641,
                                              "column": 61
                                            },
                                            "end": {
                                              "line": 641,
                                              "column": 76
                                            }
                                          },
                                          "method": false,
                                          "shorthand": false,
                                          "computed": false,
                                          "key": {
                                            "type": "Identifier",
                                            "start": 27822,
                                            "end": 27827,
                                            "loc": {
                                              "start": {
                                                "line": 641,
                                                "column": 61
                                              },
                                              "end": {
                                                "line": 641,
                                                "column": 66
                                              }
                                            },
                                            "name": "color"
                                          },
                                          "value": {
                                            "type": "Literal",
                                            "start": 27829,
                                            "end": 27837,
                                            "loc": {
                                              "start": {
                                                "line": 641,
                                                "column": 68
                                              },
                                              "end": {
                                                "line": 641,
                                                "column": 76
                                              }
                                            },
                                            "value": 8388479,
                                            "rawValue": 8388479,
                                            "raw": "0x7fff7f"
                                          },
                                          "kind": "init"
                                        }
                                      ]
                                    }
                                  ]
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 27858,
                              "end": 27876,
                              "loc": {
                                "start": {
                                  "line": 642,
                                  "column": 16
                                },
                                "end": {
                                  "line": 642,
                                  "column": 34
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 27858,
                                "end": 27875,
                                "loc": {
                                  "start": {
                                    "line": 642,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 642,
                                    "column": 33
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 27858,
                                  "end": 27869,
                                  "loc": {
                                    "start": {
                                      "line": 642,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 642,
                                      "column": 27
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 27858,
                                    "end": 27864,
                                    "loc": {
                                      "start": {
                                        "line": 642,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 642,
                                        "column": 22
                                      }
                                    },
                                    "name": "result"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 27865,
                                    "end": 27869,
                                    "loc": {
                                      "start": {
                                        "line": 642,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 642,
                                        "column": 27
                                      }
                                    },
                                    "name": "push"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 27870,
                                    "end": 27874,
                                    "loc": {
                                      "start": {
                                        "line": 642,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 642,
                                        "column": 32
                                      }
                                    },
                                    "name": "data"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "BreakStatement",
                              "start": 27894,
                              "end": 27900,
                              "loc": {
                                "start": {
                                  "line": 643,
                                  "column": 16
                                },
                                "end": {
                                  "line": 643,
                                  "column": 22
                                }
                              },
                              "label": null
                            }
                          ],
                          "test": {
                            "type": "Literal",
                            "start": 27694,
                            "end": 27700,
                            "loc": {
                              "start": {
                                "line": 639,
                                "column": 17
                              },
                              "end": {
                                "line": 639,
                                "column": 23
                              }
                            },
                            "value": "Line",
                            "rawValue": "Line",
                            "raw": "'Line'"
                          }
                        }
                      ]
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " intercept graphical objects created on the server",
                  "start": 24647,
                  "end": 24699,
                  "loc": {
                    "start": {
                      "line": 574,
                      "column": 4
                    },
                    "end": {
                      "line": 574,
                      "column": 56
                    }
                  },
                  "range": [
                    24647,
                    24699
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 27926,
              "end": 28208,
              "loc": {
                "start": {
                  "line": 647,
                  "column": 4
                },
                "end": {
                  "line": 655,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 27926,
                "end": 27941,
                "loc": {
                  "start": {
                    "line": 647,
                    "column": 4
                  },
                  "end": {
                    "line": 647,
                    "column": 19
                  }
                },
                "name": "showConstraints"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 27941,
                "end": 28208,
                "loc": {
                  "start": {
                    "line": 647,
                    "column": 19
                  },
                  "end": {
                    "line": 655,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 27942,
                    "end": 27945,
                    "loc": {
                      "start": {
                        "line": 647,
                        "column": 20
                      },
                      "end": {
                        "line": 647,
                        "column": 23
                      }
                    },
                    "name": "obj"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 27947,
                  "end": 28208,
                  "loc": {
                    "start": {
                      "line": 647,
                      "column": 25
                    },
                    "end": {
                      "line": 655,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 27958,
                      "end": 28009,
                      "loc": {
                        "start": {
                          "line": 648,
                          "column": 8
                        },
                        "end": {
                          "line": 648,
                          "column": 59
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 27962,
                          "end": 28008,
                          "loc": {
                            "start": {
                              "line": 648,
                              "column": 12
                            },
                            "end": {
                              "line": 648,
                              "column": 58
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 27962,
                            "end": 27973,
                            "loc": {
                              "start": {
                                "line": 648,
                                "column": 12
                              },
                              "end": {
                                "line": 648,
                                "column": 23
                              }
                            },
                            "name": "constraints"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 27976,
                            "end": 28008,
                            "loc": {
                              "start": {
                                "line": 648,
                                "column": 26
                              },
                              "end": {
                                "line": 648,
                                "column": 58
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 27976,
                              "end": 28003,
                              "loc": {
                                "start": {
                                  "line": 648,
                                  "column": 26
                                },
                                "end": {
                                  "line": 648,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 27976,
                                "end": 27980,
                                "loc": {
                                  "start": {
                                    "line": 648,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 648,
                                    "column": 30
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 27981,
                                "end": 28003,
                                "loc": {
                                  "start": {
                                    "line": 648,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 648,
                                    "column": 53
                                  }
                                },
                                "name": "getConstraintsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 28004,
                                "end": 28007,
                                "loc": {
                                  "start": {
                                    "line": 648,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 648,
                                    "column": 57
                                  }
                                },
                                "name": "obj"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 28019,
                      "end": 28056,
                      "loc": {
                        "start": {
                          "line": 649,
                          "column": 8
                        },
                        "end": {
                          "line": 649,
                          "column": 45
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 28023,
                        "end": 28047,
                        "loc": {
                          "start": {
                            "line": 649,
                            "column": 12
                          },
                          "end": {
                            "line": 649,
                            "column": 36
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 28023,
                          "end": 28041,
                          "loc": {
                            "start": {
                              "line": 649,
                              "column": 12
                            },
                            "end": {
                              "line": 649,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 28023,
                            "end": 28034,
                            "loc": {
                              "start": {
                                "line": 649,
                                "column": 12
                              },
                              "end": {
                                "line": 649,
                                "column": 23
                              }
                            },
                            "name": "constraints"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 28035,
                            "end": 28041,
                            "loc": {
                              "start": {
                                "line": 649,
                                "column": 24
                              },
                              "end": {
                                "line": 649,
                                "column": 30
                              }
                            },
                            "name": "length"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Literal",
                          "start": 28046,
                          "end": 28047,
                          "loc": {
                            "start": {
                              "line": 649,
                              "column": 35
                            },
                            "end": {
                              "line": 649,
                              "column": 36
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 28049,
                        "end": 28056,
                        "loc": {
                          "start": {
                            "line": 649,
                            "column": 38
                          },
                          "end": {
                            "line": 649,
                            "column": 45
                          }
                        },
                        "argument": null
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 28068,
                      "end": 28108,
                      "loc": {
                        "start": {
                          "line": 651,
                          "column": 8
                        },
                        "end": {
                          "line": 651,
                          "column": 48
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 28068,
                        "end": 28107,
                        "loc": {
                          "start": {
                            "line": 651,
                            "column": 8
                          },
                          "end": {
                            "line": 651,
                            "column": 47
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 28068,
                          "end": 28100,
                          "loc": {
                            "start": {
                              "line": 651,
                              "column": 8
                            },
                            "end": {
                              "line": 651,
                              "column": 40
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 28068,
                            "end": 28092,
                            "loc": {
                              "start": {
                                "line": 651,
                                "column": 8
                              },
                              "end": {
                                "line": 651,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 28068,
                              "end": 28071,
                              "loc": {
                                "start": {
                                  "line": 651,
                                  "column": 8
                                },
                                "end": {
                                  "line": 651,
                                  "column": 11
                                }
                              },
                              "name": "obj"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 28072,
                              "end": 28092,
                              "loc": {
                                "start": {
                                  "line": 651,
                                  "column": 12
                                },
                                "end": {
                                  "line": 651,
                                  "column": 32
                                }
                              },
                              "name": "constraintsSubstrate"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 28093,
                            "end": 28100,
                            "loc": {
                              "start": {
                                "line": 651,
                                "column": 33
                              },
                              "end": {
                                "line": 651,
                                "column": 40
                              }
                            },
                            "name": "visible"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 28103,
                          "end": 28107,
                          "loc": {
                            "start": {
                              "line": 651,
                              "column": 43
                            },
                            "end": {
                              "line": 651,
                              "column": 47
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 28120,
                      "end": 28148,
                      "loc": {
                        "start": {
                          "line": 653,
                          "column": 8
                        },
                        "end": {
                          "line": 653,
                          "column": 36
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 28120,
                        "end": 28147,
                        "loc": {
                          "start": {
                            "line": 653,
                            "column": 8
                          },
                          "end": {
                            "line": 653,
                            "column": 35
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 28120,
                          "end": 28142,
                          "loc": {
                            "start": {
                              "line": 653,
                              "column": 8
                            },
                            "end": {
                              "line": 653,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 28120,
                            "end": 28124,
                            "loc": {
                              "start": {
                                "line": 653,
                                "column": 8
                              },
                              "end": {
                                "line": 653,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 28125,
                            "end": 28142,
                            "loc": {
                              "start": {
                                "line": 653,
                                "column": 13
                              },
                              "end": {
                                "line": 653,
                                "column": 30
                              }
                            },
                            "name": "updateConstraints"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 28143,
                            "end": 28146,
                            "loc": {
                              "start": {
                                "line": 653,
                                "column": 31
                              },
                              "end": {
                                "line": 653,
                                "column": 34
                              }
                            },
                            "name": "obj"
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 28158,
                      "end": 28201,
                      "loc": {
                        "start": {
                          "line": 654,
                          "column": 8
                        },
                        "end": {
                          "line": 654,
                          "column": 51
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 28158,
                        "end": 28200,
                        "loc": {
                          "start": {
                            "line": 654,
                            "column": 8
                          },
                          "end": {
                            "line": 654,
                            "column": 50
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 28158,
                          "end": 28177,
                          "loc": {
                            "start": {
                              "line": 654,
                              "column": 8
                            },
                            "end": {
                              "line": 654,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 28158,
                            "end": 28169,
                            "loc": {
                              "start": {
                                "line": 654,
                                "column": 8
                              },
                              "end": {
                                "line": 654,
                                "column": 19
                              }
                            },
                            "name": "constraints"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 28170,
                            "end": 28177,
                            "loc": {
                              "start": {
                                "line": 654,
                                "column": 20
                              },
                              "end": {
                                "line": 654,
                                "column": 27
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 28178,
                            "end": 28199,
                            "loc": {
                              "start": {
                                "line": 654,
                                "column": 28
                              },
                              "end": {
                                "line": 654,
                                "column": 49
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 28178,
                                "end": 28183,
                                "loc": {
                                  "start": {
                                    "line": 654,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 654,
                                    "column": 33
                                  }
                                },
                                "name": "child"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 28187,
                              "end": 28199,
                              "loc": {
                                "start": {
                                  "line": 654,
                                  "column": 37
                                },
                                "end": {
                                  "line": 654,
                                  "column": 49
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 28187,
                                "end": 28197,
                                "loc": {
                                  "start": {
                                    "line": 654,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 654,
                                    "column": 47
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 28187,
                                  "end": 28192,
                                  "loc": {
                                    "start": {
                                      "line": 654,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 654,
                                      "column": 42
                                    }
                                  },
                                  "name": "child"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28193,
                                  "end": 28197,
                                  "loc": {
                                    "start": {
                                      "line": 654,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 654,
                                      "column": 47
                                    }
                                  },
                                  "name": "show"
                                },
                                "computed": false
                              },
                              "arguments": []
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 28216,
              "end": 28707,
              "loc": {
                "start": {
                  "line": 657,
                  "column": 4
                },
                "end": {
                  "line": 672,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 28216,
                "end": 28231,
                "loc": {
                  "start": {
                    "line": 657,
                    "column": 4
                  },
                  "end": {
                    "line": 657,
                    "column": 19
                  }
                },
                "name": "hideConstraints"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 28231,
                "end": 28707,
                "loc": {
                  "start": {
                    "line": 657,
                    "column": 19
                  },
                  "end": {
                    "line": 672,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 28234,
                  "end": 28707,
                  "loc": {
                    "start": {
                      "line": 657,
                      "column": 22
                    },
                    "end": {
                      "line": 672,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 28245,
                      "end": 28293,
                      "loc": {
                        "start": {
                          "line": 658,
                          "column": 8
                        },
                        "end": {
                          "line": 658,
                          "column": 56
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 28249,
                          "end": 28292,
                          "loc": {
                            "start": {
                              "line": 658,
                              "column": 12
                            },
                            "end": {
                              "line": 658,
                              "column": 55
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 28249,
                            "end": 28260,
                            "loc": {
                              "start": {
                                "line": 658,
                                "column": 12
                              },
                              "end": {
                                "line": 658,
                                "column": 23
                              }
                            },
                            "name": "constraints"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 28263,
                            "end": 28292,
                            "loc": {
                              "start": {
                                "line": 658,
                                "column": 26
                              },
                              "end": {
                                "line": 658,
                                "column": 55
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 28263,
                              "end": 28290,
                              "loc": {
                                "start": {
                                  "line": 658,
                                  "column": 26
                                },
                                "end": {
                                  "line": 658,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 28263,
                                "end": 28267,
                                "loc": {
                                  "start": {
                                    "line": 658,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 658,
                                    "column": 30
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 28268,
                                "end": 28290,
                                "loc": {
                                  "start": {
                                    "line": 658,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 658,
                                    "column": 53
                                  }
                                },
                                "name": "getConstraintsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 28305,
                      "end": 28441,
                      "loc": {
                        "start": {
                          "line": 660,
                          "column": 8
                        },
                        "end": {
                          "line": 663,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 28305,
                        "end": 28440,
                        "loc": {
                          "start": {
                            "line": 660,
                            "column": 8
                          },
                          "end": {
                            "line": 663,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 28305,
                          "end": 28324,
                          "loc": {
                            "start": {
                              "line": 660,
                              "column": 8
                            },
                            "end": {
                              "line": 660,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 28305,
                            "end": 28316,
                            "loc": {
                              "start": {
                                "line": 660,
                                "column": 8
                              },
                              "end": {
                                "line": 660,
                                "column": 19
                              }
                            },
                            "name": "constraints"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 28317,
                            "end": 28324,
                            "loc": {
                              "start": {
                                "line": 660,
                                "column": 20
                              },
                              "end": {
                                "line": 660,
                                "column": 27
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 28325,
                            "end": 28439,
                            "loc": {
                              "start": {
                                "line": 660,
                                "column": 28
                              },
                              "end": {
                                "line": 663,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 28325,
                                "end": 28330,
                                "loc": {
                                  "start": {
                                    "line": 660,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 660,
                                    "column": 33
                                  }
                                },
                                "name": "child"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 28334,
                              "end": 28439,
                              "loc": {
                                "start": {
                                  "line": 660,
                                  "column": 37
                                },
                                "end": {
                                  "line": 663,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 28349,
                                  "end": 28401,
                                  "loc": {
                                    "start": {
                                      "line": 661,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 661,
                                      "column": 64
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 28349,
                                    "end": 28400,
                                    "loc": {
                                      "start": {
                                        "line": 661,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 661,
                                        "column": 63
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 28349,
                                      "end": 28367,
                                      "loc": {
                                        "start": {
                                          "line": 661,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 661,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 28349,
                                        "end": 28359,
                                        "loc": {
                                          "start": {
                                            "line": 661,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 661,
                                            "column": 22
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 28349,
                                          "end": 28354,
                                          "loc": {
                                            "start": {
                                              "line": 661,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 661,
                                              "column": 17
                                            }
                                          },
                                          "name": "child"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 28355,
                                          "end": 28359,
                                          "loc": {
                                            "start": {
                                              "line": 661,
                                              "column": 18
                                            },
                                            "end": {
                                              "line": 661,
                                              "column": 22
                                            }
                                          },
                                          "name": "args"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 28360,
                                        "end": 28367,
                                        "loc": {
                                          "start": {
                                            "line": 661,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 661,
                                            "column": 30
                                          }
                                        },
                                        "name": "forEach"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrowFunctionExpression",
                                        "start": 28368,
                                        "end": 28399,
                                        "loc": {
                                          "start": {
                                            "line": 661,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 661,
                                            "column": 62
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": false,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 28368,
                                            "end": 28371,
                                            "loc": {
                                              "start": {
                                                "line": 661,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 661,
                                                "column": 34
                                              }
                                            },
                                            "name": "arg"
                                          }
                                        ],
                                        "body": {
                                          "type": "BlockStatement",
                                          "start": 28375,
                                          "end": 28399,
                                          "loc": {
                                            "start": {
                                              "line": 661,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 661,
                                              "column": 62
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 28377,
                                              "end": 28397,
                                              "loc": {
                                                "start": {
                                                  "line": 661,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 661,
                                                  "column": 60
                                                }
                                              },
                                              "expression": {
                                                "type": "AssignmentExpression",
                                                "start": 28377,
                                                "end": 28396,
                                                "loc": {
                                                  "start": {
                                                    "line": 661,
                                                    "column": 40
                                                  },
                                                  "end": {
                                                    "line": 661,
                                                    "column": 59
                                                  }
                                                },
                                                "operator": "=",
                                                "left": {
                                                  "type": "MemberExpression",
                                                  "start": 28377,
                                                  "end": 28388,
                                                  "loc": {
                                                    "start": {
                                                      "line": 661,
                                                      "column": 40
                                                    },
                                                    "end": {
                                                      "line": 661,
                                                      "column": 51
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 28377,
                                                    "end": 28380,
                                                    "loc": {
                                                      "start": {
                                                        "line": 661,
                                                        "column": 40
                                                      },
                                                      "end": {
                                                        "line": 661,
                                                        "column": 43
                                                      }
                                                    },
                                                    "name": "arg"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 28381,
                                                    "end": 28388,
                                                    "loc": {
                                                      "start": {
                                                        "line": 661,
                                                        "column": 44
                                                      },
                                                      "end": {
                                                        "line": 661,
                                                        "column": 51
                                                      }
                                                    },
                                                    "name": "hovered"
                                                  },
                                                  "computed": false
                                                },
                                                "right": {
                                                  "type": "Literal",
                                                  "start": 28391,
                                                  "end": 28396,
                                                  "loc": {
                                                    "start": {
                                                      "line": 661,
                                                      "column": 54
                                                    },
                                                    "end": {
                                                      "line": 661,
                                                      "column": 59
                                                    }
                                                  },
                                                  "value": false,
                                                  "rawValue": false,
                                                  "raw": "false"
                                                }
                                              }
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 28415,
                                  "end": 28428,
                                  "loc": {
                                    "start": {
                                      "line": 662,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 662,
                                      "column": 25
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 28415,
                                    "end": 28427,
                                    "loc": {
                                      "start": {
                                        "line": 662,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 662,
                                        "column": 24
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 28415,
                                      "end": 28425,
                                      "loc": {
                                        "start": {
                                          "line": 662,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 662,
                                          "column": 22
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 28415,
                                        "end": 28420,
                                        "loc": {
                                          "start": {
                                            "line": 662,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 662,
                                            "column": 17
                                          }
                                        },
                                        "name": "child"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 28421,
                                        "end": 28425,
                                        "loc": {
                                          "start": {
                                            "line": 662,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 662,
                                            "column": 22
                                          }
                                        },
                                        "name": "hide"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 28453,
                      "end": 28700,
                      "loc": {
                        "start": {
                          "line": 665,
                          "column": 8
                        },
                        "end": {
                          "line": 671,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 28453,
                        "end": 28699,
                        "loc": {
                          "start": {
                            "line": 665,
                            "column": 8
                          },
                          "end": {
                            "line": 671,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 28453,
                          "end": 28486,
                          "loc": {
                            "start": {
                              "line": 665,
                              "column": 8
                            },
                            "end": {
                              "line": 665,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 28453,
                            "end": 28478,
                            "loc": {
                              "start": {
                                "line": 665,
                                "column": 8
                              },
                              "end": {
                                "line": 665,
                                "column": 33
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 28453,
                              "end": 28476,
                              "loc": {
                                "start": {
                                  "line": 665,
                                  "column": 8
                                },
                                "end": {
                                  "line": 665,
                                  "column": 31
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 28453,
                                "end": 28457,
                                "loc": {
                                  "start": {
                                    "line": 665,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 665,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 28458,
                                "end": 28476,
                                "loc": {
                                  "start": {
                                    "line": 665,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 665,
                                    "column": 31
                                  }
                                },
                                "name": "getObjectsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": []
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 28479,
                            "end": 28486,
                            "loc": {
                              "start": {
                                "line": 665,
                                "column": 34
                              },
                              "end": {
                                "line": 665,
                                "column": 41
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 28487,
                            "end": 28698,
                            "loc": {
                              "start": {
                                "line": 665,
                                "column": 42
                              },
                              "end": {
                                "line": 671,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 28487,
                                "end": 28490,
                                "loc": {
                                  "start": {
                                    "line": 665,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 665,
                                    "column": 45
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 28494,
                              "end": 28698,
                              "loc": {
                                "start": {
                                  "line": 665,
                                  "column": 49
                                },
                                "end": {
                                  "line": 671,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 28509,
                                  "end": 28685,
                                  "loc": {
                                    "start": {
                                      "line": 666,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 669,
                                      "column": 15
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 28509,
                                    "end": 28684,
                                    "loc": {
                                      "start": {
                                        "line": 666,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 669,
                                        "column": 14
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 28509,
                                      "end": 28538,
                                      "loc": {
                                        "start": {
                                          "line": 666,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 666,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 28509,
                                        "end": 28515,
                                        "loc": {
                                          "start": {
                                            "line": 666,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 666,
                                            "column": 18
                                          }
                                        },
                                        "name": "Sketch"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 28516,
                                        "end": 28538,
                                        "loc": {
                                          "start": {
                                            "line": 666,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 666,
                                            "column": 41
                                          }
                                        },
                                        "name": "ForObjectsWithChildren"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 28539,
                                        "end": 28542,
                                        "loc": {
                                          "start": {
                                            "line": 666,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 666,
                                            "column": 45
                                          }
                                        },
                                        "name": "obj"
                                      },
                                      {
                                        "type": "FunctionExpression",
                                        "start": 28544,
                                        "end": 28683,
                                        "loc": {
                                          "start": {
                                            "line": 666,
                                            "column": 47
                                          },
                                          "end": {
                                            "line": 669,
                                            "column": 13
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": false,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 28553,
                                            "end": 28556,
                                            "loc": {
                                              "start": {
                                                "line": 666,
                                                "column": 56
                                              },
                                              "end": {
                                                "line": 666,
                                                "column": 59
                                              }
                                            },
                                            "name": "arg"
                                          }
                                        ],
                                        "body": {
                                          "type": "BlockStatement",
                                          "start": 28557,
                                          "end": 28683,
                                          "loc": {
                                            "start": {
                                              "line": 666,
                                              "column": 60
                                            },
                                            "end": {
                                              "line": 669,
                                              "column": 13
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "IfStatement",
                                              "start": 28576,
                                              "end": 28668,
                                              "loc": {
                                                "start": {
                                                  "line": 667,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 668,
                                                  "column": 61
                                                }
                                              },
                                              "test": {
                                                "type": "MemberExpression",
                                                "start": 28580,
                                                "end": 28604,
                                                "loc": {
                                                  "start": {
                                                    "line": 667,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 667,
                                                    "column": 44
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 28580,
                                                  "end": 28583,
                                                  "loc": {
                                                    "start": {
                                                      "line": 667,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 667,
                                                      "column": 23
                                                    }
                                                  },
                                                  "name": "arg"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 28584,
                                                  "end": 28604,
                                                  "loc": {
                                                    "start": {
                                                      "line": 667,
                                                      "column": 24
                                                    },
                                                    "end": {
                                                      "line": 667,
                                                      "column": 44
                                                    }
                                                  },
                                                  "name": "constraintsSubstrate"
                                                },
                                                "computed": false
                                              },
                                              "consequent": {
                                                "type": "ExpressionStatement",
                                                "start": 28627,
                                                "end": 28668,
                                                "loc": {
                                                  "start": {
                                                    "line": 668,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 668,
                                                    "column": 61
                                                  }
                                                },
                                                "expression": {
                                                  "type": "AssignmentExpression",
                                                  "start": 28627,
                                                  "end": 28667,
                                                  "loc": {
                                                    "start": {
                                                      "line": 668,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 668,
                                                      "column": 60
                                                    }
                                                  },
                                                  "operator": "=",
                                                  "left": {
                                                    "type": "MemberExpression",
                                                    "start": 28627,
                                                    "end": 28659,
                                                    "loc": {
                                                      "start": {
                                                        "line": 668,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 668,
                                                        "column": 52
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "MemberExpression",
                                                      "start": 28627,
                                                      "end": 28651,
                                                      "loc": {
                                                        "start": {
                                                          "line": 668,
                                                          "column": 20
                                                        },
                                                        "end": {
                                                          "line": 668,
                                                          "column": 44
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 28627,
                                                        "end": 28630,
                                                        "loc": {
                                                          "start": {
                                                            "line": 668,
                                                            "column": 20
                                                          },
                                                          "end": {
                                                            "line": 668,
                                                            "column": 23
                                                          }
                                                        },
                                                        "name": "arg"
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 28631,
                                                        "end": 28651,
                                                        "loc": {
                                                          "start": {
                                                            "line": 668,
                                                            "column": 24
                                                          },
                                                          "end": {
                                                            "line": 668,
                                                            "column": 44
                                                          }
                                                        },
                                                        "name": "constraintsSubstrate"
                                                      },
                                                      "computed": false
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 28652,
                                                      "end": 28659,
                                                      "loc": {
                                                        "start": {
                                                          "line": 668,
                                                          "column": 45
                                                        },
                                                        "end": {
                                                          "line": 668,
                                                          "column": 52
                                                        }
                                                      },
                                                      "name": "visible"
                                                    },
                                                    "computed": false
                                                  },
                                                  "right": {
                                                    "type": "Literal",
                                                    "start": 28662,
                                                    "end": 28667,
                                                    "loc": {
                                                      "start": {
                                                        "line": 668,
                                                        "column": 55
                                                      },
                                                      "end": {
                                                        "line": 668,
                                                        "column": 60
                                                      }
                                                    },
                                                    "value": false,
                                                    "rawValue": false,
                                                    "raw": "false"
                                                  }
                                                }
                                              },
                                              "alternate": null
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 28715,
              "end": 29664,
              "loc": {
                "start": {
                  "line": 674,
                  "column": 4
                },
                "end": {
                  "line": 695,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 28715,
                "end": 28732,
                "loc": {
                  "start": {
                    "line": 674,
                    "column": 4
                  },
                  "end": {
                    "line": 674,
                    "column": 21
                  }
                },
                "name": "updateConstraints"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 28732,
                "end": 29664,
                "loc": {
                  "start": {
                    "line": 674,
                    "column": 21
                  },
                  "end": {
                    "line": 695,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 28733,
                    "end": 28736,
                    "loc": {
                      "start": {
                        "line": 674,
                        "column": 22
                      },
                      "end": {
                        "line": 674,
                        "column": 25
                      }
                    },
                    "name": "obj"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 28738,
                  "end": 29664,
                  "loc": {
                    "start": {
                      "line": 674,
                      "column": 27
                    },
                    "end": {
                      "line": 695,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 28749,
                      "end": 28790,
                      "loc": {
                        "start": {
                          "line": 675,
                          "column": 8
                        },
                        "end": {
                          "line": 675,
                          "column": 49
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 28753,
                          "end": 28789,
                          "loc": {
                            "start": {
                              "line": 675,
                              "column": 12
                            },
                            "end": {
                              "line": 675,
                              "column": 48
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 28753,
                            "end": 28762,
                            "loc": {
                              "start": {
                                "line": 675,
                                "column": 12
                              },
                              "end": {
                                "line": 675,
                                "column": 21
                              }
                            },
                            "name": "substrate"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 28765,
                            "end": 28789,
                            "loc": {
                              "start": {
                                "line": 675,
                                "column": 24
                              },
                              "end": {
                                "line": 675,
                                "column": 48
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 28765,
                              "end": 28768,
                              "loc": {
                                "start": {
                                  "line": 675,
                                  "column": 24
                                },
                                "end": {
                                  "line": 675,
                                  "column": 27
                                }
                              },
                              "name": "obj"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 28769,
                              "end": 28789,
                              "loc": {
                                "start": {
                                  "line": 675,
                                  "column": 28
                                },
                                "end": {
                                  "line": 675,
                                  "column": 48
                                }
                              },
                              "name": "constraintsSubstrate"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 28800,
                      "end": 28851,
                      "loc": {
                        "start": {
                          "line": 676,
                          "column": 8
                        },
                        "end": {
                          "line": 676,
                          "column": 59
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 28804,
                          "end": 28850,
                          "loc": {
                            "start": {
                              "line": 676,
                              "column": 12
                            },
                            "end": {
                              "line": 676,
                              "column": 58
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 28804,
                            "end": 28815,
                            "loc": {
                              "start": {
                                "line": 676,
                                "column": 12
                              },
                              "end": {
                                "line": 676,
                                "column": 23
                              }
                            },
                            "name": "constraints"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 28818,
                            "end": 28850,
                            "loc": {
                              "start": {
                                "line": 676,
                                "column": 26
                              },
                              "end": {
                                "line": 676,
                                "column": 58
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 28818,
                              "end": 28845,
                              "loc": {
                                "start": {
                                  "line": 676,
                                  "column": 26
                                },
                                "end": {
                                  "line": 676,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 28818,
                                "end": 28822,
                                "loc": {
                                  "start": {
                                    "line": 676,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 676,
                                    "column": 30
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 28823,
                                "end": 28845,
                                "loc": {
                                  "start": {
                                    "line": 676,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 676,
                                    "column": 53
                                  }
                                },
                                "name": "getConstraintsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 28846,
                                "end": 28849,
                                "loc": {
                                  "start": {
                                    "line": 676,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 676,
                                    "column": 57
                                  }
                                },
                                "name": "obj"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 28863,
                      "end": 29044,
                      "loc": {
                        "start": {
                          "line": 678,
                          "column": 8
                        },
                        "end": {
                          "line": 682,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 28867,
                        "end": 28891,
                        "loc": {
                          "start": {
                            "line": 678,
                            "column": 12
                          },
                          "end": {
                            "line": 678,
                            "column": 36
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 28867,
                          "end": 28885,
                          "loc": {
                            "start": {
                              "line": 678,
                              "column": 12
                            },
                            "end": {
                              "line": 678,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 28867,
                            "end": 28878,
                            "loc": {
                              "start": {
                                "line": 678,
                                "column": 12
                              },
                              "end": {
                                "line": 678,
                                "column": 23
                              }
                            },
                            "name": "constraints"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 28879,
                            "end": 28885,
                            "loc": {
                              "start": {
                                "line": 678,
                                "column": 24
                              },
                              "end": {
                                "line": 678,
                                "column": 30
                              }
                            },
                            "name": "length"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Literal",
                          "start": 28890,
                          "end": 28891,
                          "loc": {
                            "start": {
                              "line": 678,
                              "column": 35
                            },
                            "end": {
                              "line": 678,
                              "column": 36
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0"
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 28893,
                        "end": 29044,
                        "loc": {
                          "start": {
                            "line": 678,
                            "column": 38
                          },
                          "end": {
                            "line": 682,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 28908,
                            "end": 28949,
                            "loc": {
                              "start": {
                                "line": 679,
                                "column": 12
                              },
                              "end": {
                                "line": 679,
                                "column": 53
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 28908,
                              "end": 28948,
                              "loc": {
                                "start": {
                                  "line": 679,
                                  "column": 12
                                },
                                "end": {
                                  "line": 679,
                                  "column": 52
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 28908,
                                "end": 28940,
                                "loc": {
                                  "start": {
                                    "line": 679,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 679,
                                    "column": 44
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 28908,
                                  "end": 28932,
                                  "loc": {
                                    "start": {
                                      "line": 679,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 679,
                                      "column": 36
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 28908,
                                    "end": 28911,
                                    "loc": {
                                      "start": {
                                        "line": 679,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 679,
                                        "column": 15
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 28912,
                                    "end": 28932,
                                    "loc": {
                                      "start": {
                                        "line": 679,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 679,
                                        "column": 36
                                      }
                                    },
                                    "name": "constraintsSubstrate"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28933,
                                  "end": 28940,
                                  "loc": {
                                    "start": {
                                      "line": 679,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 679,
                                      "column": 44
                                    }
                                  },
                                  "name": "visible"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 28943,
                                "end": 28948,
                                "loc": {
                                  "start": {
                                    "line": 679,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 679,
                                    "column": 52
                                  }
                                },
                                "value": false,
                                "rawValue": false,
                                "raw": "false"
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 28963,
                            "end": 29010,
                            "loc": {
                              "start": {
                                "line": 680,
                                "column": 12
                              },
                              "end": {
                                "line": 680,
                                "column": 59
                              }
                            },
                            "expression": {
                              "type": "LogicalExpression",
                              "start": 28963,
                              "end": 29009,
                              "loc": {
                                "start": {
                                  "line": 680,
                                  "column": 12
                                },
                                "end": {
                                  "line": 680,
                                  "column": 58
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 28963,
                                "end": 28983,
                                "loc": {
                                  "start": {
                                    "line": 680,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 680,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 28963,
                                  "end": 28975,
                                  "loc": {
                                    "start": {
                                      "line": 680,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 680,
                                      "column": 24
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 28963,
                                    "end": 28966,
                                    "loc": {
                                      "start": {
                                        "line": 680,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 680,
                                        "column": 15
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 28967,
                                    "end": 28975,
                                    "loc": {
                                      "start": {
                                        "line": 680,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 680,
                                        "column": 24
                                      }
                                    },
                                    "name": "interact"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28976,
                                  "end": 28983,
                                  "loc": {
                                    "start": {
                                      "line": 680,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 680,
                                      "column": 32
                                    }
                                  },
                                  "name": "unhover"
                                },
                                "computed": false
                              },
                              "operator": "&&",
                              "right": {
                                "type": "CallExpression",
                                "start": 28987,
                                "end": 29009,
                                "loc": {
                                  "start": {
                                    "line": 680,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 680,
                                    "column": 58
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 28987,
                                  "end": 29007,
                                  "loc": {
                                    "start": {
                                      "line": 680,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 680,
                                      "column": 56
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 28987,
                                    "end": 28999,
                                    "loc": {
                                      "start": {
                                        "line": 680,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 680,
                                        "column": 48
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 28987,
                                      "end": 28990,
                                      "loc": {
                                        "start": {
                                          "line": 680,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 680,
                                          "column": 39
                                        }
                                      },
                                      "name": "obj"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 28991,
                                      "end": 28999,
                                      "loc": {
                                        "start": {
                                          "line": 680,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 680,
                                          "column": 48
                                        }
                                      },
                                      "name": "interact"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 29000,
                                    "end": 29007,
                                    "loc": {
                                      "start": {
                                        "line": 680,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 680,
                                        "column": 56
                                      }
                                    },
                                    "name": "unhover"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              }
                            }
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 29024,
                            "end": 29033,
                            "loc": {
                              "start": {
                                "line": 681,
                                "column": 12
                              },
                              "end": {
                                "line": 681,
                                "column": 21
                              }
                            },
                            "argument": {
                              "type": "Literal",
                              "start": 29031,
                              "end": 29032,
                              "loc": {
                                "start": {
                                  "line": 681,
                                  "column": 19
                                },
                                "end": {
                                  "line": 681,
                                  "column": 20
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 29056,
                      "end": 29085,
                      "loc": {
                        "start": {
                          "line": 684,
                          "column": 8
                        },
                        "end": {
                          "line": 684,
                          "column": 37
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 29060,
                          "end": 29084,
                          "loc": {
                            "start": {
                              "line": 684,
                              "column": 12
                            },
                            "end": {
                              "line": 684,
                              "column": 36
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 29060,
                            "end": 29063,
                            "loc": {
                              "start": {
                                "line": 684,
                                "column": 12
                              },
                              "end": {
                                "line": 684,
                                "column": 15
                              }
                            },
                            "name": "len"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 29066,
                            "end": 29084,
                            "loc": {
                              "start": {
                                "line": 684,
                                "column": 18
                              },
                              "end": {
                                "line": 684,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 29066,
                              "end": 29077,
                              "loc": {
                                "start": {
                                  "line": 684,
                                  "column": 18
                                },
                                "end": {
                                  "line": 684,
                                  "column": 29
                                }
                              },
                              "name": "constraints"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 29078,
                              "end": 29084,
                              "loc": {
                                "start": {
                                  "line": 684,
                                  "column": 30
                                },
                                "end": {
                                  "line": 684,
                                  "column": 36
                                }
                              },
                              "name": "length"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 29095,
                      "end": 29135,
                      "loc": {
                        "start": {
                          "line": 685,
                          "column": 8
                        },
                        "end": {
                          "line": 685,
                          "column": 48
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 29099,
                          "end": 29134,
                          "loc": {
                            "start": {
                              "line": 685,
                              "column": 12
                            },
                            "end": {
                              "line": 685,
                              "column": 47
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 29099,
                            "end": 29104,
                            "loc": {
                              "start": {
                                "line": 685,
                                "column": 12
                              },
                              "end": {
                                "line": 685,
                                "column": 17
                              }
                            },
                            "name": "scale"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 29107,
                            "end": 29134,
                            "loc": {
                              "start": {
                                "line": 685,
                                "column": 20
                              },
                              "end": {
                                "line": 685,
                                "column": 47
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 29107,
                              "end": 29132,
                              "loc": {
                                "start": {
                                  "line": 685,
                                  "column": 20
                                },
                                "end": {
                                  "line": 685,
                                  "column": 45
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 29107,
                                "end": 29126,
                                "loc": {
                                  "start": {
                                    "line": 685,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 685,
                                    "column": 39
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 29107,
                                  "end": 29121,
                                  "loc": {
                                    "start": {
                                      "line": 685,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 685,
                                      "column": 34
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29107,
                                    "end": 29118,
                                    "loc": {
                                      "start": {
                                        "line": 685,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 685,
                                        "column": 31
                                      }
                                    },
                                    "name": "constraints"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 29119,
                                    "end": 29120,
                                    "loc": {
                                      "start": {
                                        "line": 685,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 685,
                                        "column": 33
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 29122,
                                  "end": 29126,
                                  "loc": {
                                    "start": {
                                      "line": 685,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 685,
                                      "column": 39
                                    }
                                  },
                                  "name": "mesh"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 29127,
                                "end": 29132,
                                "loc": {
                                  "start": {
                                    "line": 685,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 685,
                                    "column": 45
                                  }
                                },
                                "name": "scale"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 29133,
                              "end": 29134,
                              "loc": {
                                "start": {
                                  "line": 685,
                                  "column": 46
                                },
                                "end": {
                                  "line": 685,
                                  "column": 47
                                }
                              },
                              "name": "x"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 29145,
                      "end": 29168,
                      "loc": {
                        "start": {
                          "line": 686,
                          "column": 8
                        },
                        "end": {
                          "line": 686,
                          "column": 31
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 29149,
                          "end": 29167,
                          "loc": {
                            "start": {
                              "line": 686,
                              "column": 12
                            },
                            "end": {
                              "line": 686,
                              "column": 30
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 29149,
                            "end": 29153,
                            "loc": {
                              "start": {
                                "line": 686,
                                "column": 12
                              },
                              "end": {
                                "line": 686,
                                "column": 16
                              }
                            },
                            "name": "size"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 29156,
                            "end": 29167,
                            "loc": {
                              "start": {
                                "line": 686,
                                "column": 19
                              },
                              "end": {
                                "line": 686,
                                "column": 30
                              }
                            },
                            "left": {
                              "type": "Literal",
                              "start": 29156,
                              "end": 29159,
                              "loc": {
                                "start": {
                                  "line": 686,
                                  "column": 19
                                },
                                "end": {
                                  "line": 686,
                                  "column": 22
                                }
                              },
                              "value": 1.2,
                              "rawValue": 1.2,
                              "raw": "1.2"
                            },
                            "operator": "*",
                            "right": {
                              "type": "Identifier",
                              "start": 29162,
                              "end": 29167,
                              "loc": {
                                "start": {
                                  "line": 686,
                                  "column": 25
                                },
                                "end": {
                                  "line": 686,
                                  "column": 30
                                }
                              },
                              "name": "scale"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 29178,
                      "end": 29250,
                      "loc": {
                        "start": {
                          "line": 687,
                          "column": 8
                        },
                        "end": {
                          "line": 687,
                          "column": 80
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 29178,
                        "end": 29249,
                        "loc": {
                          "start": {
                            "line": 687,
                            "column": 8
                          },
                          "end": {
                            "line": 687,
                            "column": 79
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 29178,
                          "end": 29197,
                          "loc": {
                            "start": {
                              "line": 687,
                              "column": 8
                            },
                            "end": {
                              "line": 687,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 29178,
                            "end": 29193,
                            "loc": {
                              "start": {
                                "line": 687,
                                "column": 8
                              },
                              "end": {
                                "line": 687,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 29178,
                              "end": 29187,
                              "loc": {
                                "start": {
                                  "line": 687,
                                  "column": 8
                                },
                                "end": {
                                  "line": 687,
                                  "column": 17
                                }
                              },
                              "name": "substrate"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 29188,
                              "end": 29193,
                              "loc": {
                                "start": {
                                  "line": 687,
                                  "column": 18
                                },
                                "end": {
                                  "line": 687,
                                  "column": 23
                                }
                              },
                              "name": "scale"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 29194,
                            "end": 29197,
                            "loc": {
                              "start": {
                                "line": 687,
                                "column": 24
                              },
                              "end": {
                                "line": 687,
                                "column": 27
                              }
                            },
                            "name": "set"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "BinaryExpression",
                            "start": 29198,
                            "end": 29223,
                            "loc": {
                              "start": {
                                "line": 687,
                                "column": 28
                              },
                              "end": {
                                "line": 687,
                                "column": 53
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 29198,
                              "end": 29202,
                              "loc": {
                                "start": {
                                  "line": 687,
                                  "column": 28
                                },
                                "end": {
                                  "line": 687,
                                  "column": 32
                                }
                              },
                              "name": "size"
                            },
                            "operator": "*",
                            "right": {
                              "type": "MemberExpression",
                              "start": 29205,
                              "end": 29223,
                              "loc": {
                                "start": {
                                  "line": 687,
                                  "column": 35
                                },
                                "end": {
                                  "line": 687,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 29205,
                                "end": 29216,
                                "loc": {
                                  "start": {
                                    "line": 687,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 687,
                                    "column": 46
                                  }
                                },
                                "name": "constraints"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 29217,
                                "end": 29223,
                                "loc": {
                                  "start": {
                                    "line": 687,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 687,
                                    "column": 53
                                  }
                                },
                                "name": "length"
                              },
                              "computed": false
                            }
                          },
                          {
                            "type": "Identifier",
                            "start": 29225,
                            "end": 29229,
                            "loc": {
                              "start": {
                                "line": 687,
                                "column": 55
                              },
                              "end": {
                                "line": 687,
                                "column": 59
                              }
                            },
                            "name": "size"
                          },
                          {
                            "type": "CallExpression",
                            "start": 29231,
                            "end": 29248,
                            "loc": {
                              "start": {
                                "line": 687,
                                "column": 61
                              },
                              "end": {
                                "line": 687,
                                "column": 78
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 29231,
                              "end": 29239,
                              "loc": {
                                "start": {
                                  "line": 687,
                                  "column": 61
                                },
                                "end": {
                                  "line": 687,
                                  "column": 69
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 29231,
                                "end": 29235,
                                "loc": {
                                  "start": {
                                    "line": 687,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 687,
                                    "column": 65
                                  }
                                },
                                "name": "Math"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 29236,
                                "end": 29239,
                                "loc": {
                                  "start": {
                                    "line": 687,
                                    "column": 66
                                  },
                                  "end": {
                                    "line": 687,
                                    "column": 69
                                  }
                                },
                                "name": "min"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 29240,
                                "end": 29244,
                                "loc": {
                                  "start": {
                                    "line": 687,
                                    "column": 70
                                  },
                                  "end": {
                                    "line": 687,
                                    "column": 74
                                  }
                                },
                                "name": "size"
                              },
                              {
                                "type": "Literal",
                                "start": 29246,
                                "end": 29247,
                                "loc": {
                                  "start": {
                                    "line": 687,
                                    "column": 76
                                  },
                                  "end": {
                                    "line": 687,
                                    "column": 77
                                  }
                                },
                                "value": 1,
                                "rawValue": 1,
                                "raw": "1"
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 29260,
                      "end": 29320,
                      "loc": {
                        "start": {
                          "line": 688,
                          "column": 8
                        },
                        "end": {
                          "line": 688,
                          "column": 68
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 29264,
                          "end": 29319,
                          "loc": {
                            "start": {
                              "line": 688,
                              "column": 12
                            },
                            "end": {
                              "line": 688,
                              "column": 67
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 29264,
                            "end": 29267,
                            "loc": {
                              "start": {
                                "line": 688,
                                "column": 12
                              },
                              "end": {
                                "line": 688,
                                "column": 15
                              }
                            },
                            "name": "pos"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 29270,
                            "end": 29319,
                            "loc": {
                              "start": {
                                "line": 688,
                                "column": 18
                              },
                              "end": {
                                "line": 688,
                                "column": 67
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 29270,
                              "end": 29294,
                              "loc": {
                                "start": {
                                  "line": 688,
                                  "column": 18
                                },
                                "end": {
                                  "line": 688,
                                  "column": 42
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 29270,
                                "end": 29273,
                                "loc": {
                                  "start": {
                                    "line": 688,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 688,
                                    "column": 21
                                  }
                                },
                                "name": "obj"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 29274,
                                "end": 29294,
                                "loc": {
                                  "start": {
                                    "line": 688,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 688,
                                    "column": 42
                                  }
                                },
                                "name": "getSubstratePosition"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 29295,
                                "end": 29312,
                                "loc": {
                                  "start": {
                                    "line": 688,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 688,
                                    "column": 60
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 29295,
                                  "end": 29310,
                                  "loc": {
                                    "start": {
                                      "line": 688,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 688,
                                      "column": 58
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29295,
                                    "end": 29304,
                                    "loc": {
                                      "start": {
                                        "line": 688,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 688,
                                        "column": 52
                                      }
                                    },
                                    "name": "substrate"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 29305,
                                    "end": 29310,
                                    "loc": {
                                      "start": {
                                        "line": 688,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 688,
                                        "column": 58
                                      }
                                    },
                                    "name": "scale"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 29311,
                                  "end": 29312,
                                  "loc": {
                                    "start": {
                                      "line": 688,
                                      "column": 59
                                    },
                                    "end": {
                                      "line": 688,
                                      "column": 60
                                    }
                                  },
                                  "name": "x"
                                },
                                "computed": false
                              },
                              {
                                "type": "Identifier",
                                "start": 29314,
                                "end": 29318,
                                "loc": {
                                  "start": {
                                    "line": 688,
                                    "column": 62
                                  },
                                  "end": {
                                    "line": 688,
                                    "column": 66
                                  }
                                },
                                "name": "size"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 29330,
                      "end": 29371,
                      "loc": {
                        "start": {
                          "line": 689,
                          "column": 8
                        },
                        "end": {
                          "line": 689,
                          "column": 49
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 29330,
                        "end": 29370,
                        "loc": {
                          "start": {
                            "line": 689,
                            "column": 8
                          },
                          "end": {
                            "line": 689,
                            "column": 48
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 29330,
                          "end": 29352,
                          "loc": {
                            "start": {
                              "line": 689,
                              "column": 8
                            },
                            "end": {
                              "line": 689,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 29330,
                            "end": 29348,
                            "loc": {
                              "start": {
                                "line": 689,
                                "column": 8
                              },
                              "end": {
                                "line": 689,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 29330,
                              "end": 29339,
                              "loc": {
                                "start": {
                                  "line": 689,
                                  "column": 8
                                },
                                "end": {
                                  "line": 689,
                                  "column": 17
                                }
                              },
                              "name": "substrate"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 29340,
                              "end": 29348,
                              "loc": {
                                "start": {
                                  "line": 689,
                                  "column": 18
                                },
                                "end": {
                                  "line": 689,
                                  "column": 26
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 29349,
                            "end": 29352,
                            "loc": {
                              "start": {
                                "line": 689,
                                "column": 27
                              },
                              "end": {
                                "line": 689,
                                "column": 30
                              }
                            },
                            "name": "set"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 29353,
                            "end": 29358,
                            "loc": {
                              "start": {
                                "line": 689,
                                "column": 31
                              },
                              "end": {
                                "line": 689,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 29353,
                              "end": 29356,
                              "loc": {
                                "start": {
                                  "line": 689,
                                  "column": 31
                                },
                                "end": {
                                  "line": 689,
                                  "column": 34
                                }
                              },
                              "name": "pos"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 29357,
                              "end": 29358,
                              "loc": {
                                "start": {
                                  "line": 689,
                                  "column": 35
                                },
                                "end": {
                                  "line": 689,
                                  "column": 36
                                }
                              },
                              "name": "x"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 29360,
                            "end": 29365,
                            "loc": {
                              "start": {
                                "line": 689,
                                "column": 38
                              },
                              "end": {
                                "line": 689,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 29360,
                              "end": 29363,
                              "loc": {
                                "start": {
                                  "line": 689,
                                  "column": 38
                                },
                                "end": {
                                  "line": 689,
                                  "column": 41
                                }
                              },
                              "name": "pos"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 29364,
                              "end": 29365,
                              "loc": {
                                "start": {
                                  "line": 689,
                                  "column": 42
                                },
                                "end": {
                                  "line": 689,
                                  "column": 43
                                }
                              },
                              "name": "y"
                            },
                            "computed": false
                          },
                          {
                            "type": "UnaryExpression",
                            "start": 29367,
                            "end": 29369,
                            "loc": {
                              "start": {
                                "line": 689,
                                "column": 45
                              },
                              "end": {
                                "line": 689,
                                "column": 47
                              }
                            },
                            "operator": "-",
                            "prefix": true,
                            "argument": {
                              "type": "Literal",
                              "start": 29368,
                              "end": 29369,
                              "loc": {
                                "start": {
                                  "line": 689,
                                  "column": 46
                                },
                                "end": {
                                  "line": 689,
                                  "column": 47
                                }
                              },
                              "value": 1,
                              "rawValue": 1,
                              "raw": "1"
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 29381,
                      "end": 29459,
                      "loc": {
                        "start": {
                          "line": 690,
                          "column": 8
                        },
                        "end": {
                          "line": 690,
                          "column": 86
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 29385,
                          "end": 29458,
                          "loc": {
                            "start": {
                              "line": 690,
                              "column": 12
                            },
                            "end": {
                              "line": 690,
                              "column": 85
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 29385,
                            "end": 29394,
                            "loc": {
                              "start": {
                                "line": 690,
                                "column": 12
                              },
                              "end": {
                                "line": 690,
                                "column": 21
                              }
                            },
                            "name": "mostLeftX"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 29397,
                            "end": 29458,
                            "loc": {
                              "start": {
                                "line": 690,
                                "column": 24
                              },
                              "end": {
                                "line": 690,
                                "column": 85
                              }
                            },
                            "left": {
                              "type": "BinaryExpression",
                              "start": 29397,
                              "end": 29434,
                              "loc": {
                                "start": {
                                  "line": 690,
                                  "column": 24
                                },
                                "end": {
                                  "line": 690,
                                  "column": 61
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 29397,
                                "end": 29417,
                                "loc": {
                                  "start": {
                                    "line": 690,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 690,
                                    "column": 44
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 29397,
                                  "end": 29415,
                                  "loc": {
                                    "start": {
                                      "line": 690,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 690,
                                      "column": 42
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29397,
                                    "end": 29406,
                                    "loc": {
                                      "start": {
                                        "line": 690,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 690,
                                        "column": 33
                                      }
                                    },
                                    "name": "substrate"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 29407,
                                    "end": 29415,
                                    "loc": {
                                      "start": {
                                        "line": 690,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 690,
                                        "column": 42
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 29416,
                                  "end": 29417,
                                  "loc": {
                                    "start": {
                                      "line": 690,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 690,
                                      "column": 44
                                    }
                                  },
                                  "name": "x"
                                },
                                "computed": false
                              },
                              "operator": "+",
                              "right": {
                                "type": "MemberExpression",
                                "start": 29420,
                                "end": 29434,
                                "loc": {
                                  "start": {
                                    "line": 690,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 690,
                                    "column": 61
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 29420,
                                  "end": 29432,
                                  "loc": {
                                    "start": {
                                      "line": 690,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 690,
                                      "column": 59
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29420,
                                    "end": 29423,
                                    "loc": {
                                      "start": {
                                        "line": 690,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 690,
                                        "column": 50
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 29424,
                                    "end": 29432,
                                    "loc": {
                                      "start": {
                                        "line": 690,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 690,
                                        "column": 59
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 29433,
                                  "end": 29434,
                                  "loc": {
                                    "start": {
                                      "line": 690,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 690,
                                      "column": 61
                                    }
                                  },
                                  "name": "x"
                                },
                                "computed": false
                              }
                            },
                            "operator": "-",
                            "right": {
                              "type": "BinaryExpression",
                              "start": 29437,
                              "end": 29458,
                              "loc": {
                                "start": {
                                  "line": 690,
                                  "column": 64
                                },
                                "end": {
                                  "line": 690,
                                  "column": 85
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 29437,
                                "end": 29454,
                                "loc": {
                                  "start": {
                                    "line": 690,
                                    "column": 64
                                  },
                                  "end": {
                                    "line": 690,
                                    "column": 81
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 29437,
                                  "end": 29452,
                                  "loc": {
                                    "start": {
                                      "line": 690,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 690,
                                      "column": 79
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29437,
                                    "end": 29446,
                                    "loc": {
                                      "start": {
                                        "line": 690,
                                        "column": 64
                                      },
                                      "end": {
                                        "line": 690,
                                        "column": 73
                                      }
                                    },
                                    "name": "substrate"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 29447,
                                    "end": 29452,
                                    "loc": {
                                      "start": {
                                        "line": 690,
                                        "column": 74
                                      },
                                      "end": {
                                        "line": 690,
                                        "column": 79
                                      }
                                    },
                                    "name": "scale"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 29453,
                                  "end": 29454,
                                  "loc": {
                                    "start": {
                                      "line": 690,
                                      "column": 80
                                    },
                                    "end": {
                                      "line": 690,
                                      "column": 81
                                    }
                                  },
                                  "name": "x"
                                },
                                "computed": false
                              },
                              "operator": "/",
                              "right": {
                                "type": "Literal",
                                "start": 29457,
                                "end": 29458,
                                "loc": {
                                  "start": {
                                    "line": 690,
                                    "column": 84
                                  },
                                  "end": {
                                    "line": 690,
                                    "column": 85
                                  }
                                },
                                "value": 2,
                                "rawValue": 2,
                                "raw": "2"
                              }
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 29469,
                      "end": 29521,
                      "loc": {
                        "start": {
                          "line": 691,
                          "column": 8
                        },
                        "end": {
                          "line": 691,
                          "column": 60
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 29473,
                          "end": 29520,
                          "loc": {
                            "start": {
                              "line": 691,
                              "column": 12
                            },
                            "end": {
                              "line": 691,
                              "column": 59
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 29473,
                            "end": 29480,
                            "loc": {
                              "start": {
                                "line": 691,
                                "column": 12
                              },
                              "end": {
                                "line": 691,
                                "column": 19
                              }
                            },
                            "name": "middleY"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 29483,
                            "end": 29520,
                            "loc": {
                              "start": {
                                "line": 691,
                                "column": 22
                              },
                              "end": {
                                "line": 691,
                                "column": 59
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 29483,
                              "end": 29503,
                              "loc": {
                                "start": {
                                  "line": 691,
                                  "column": 22
                                },
                                "end": {
                                  "line": 691,
                                  "column": 42
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 29483,
                                "end": 29501,
                                "loc": {
                                  "start": {
                                    "line": 691,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 691,
                                    "column": 40
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 29483,
                                  "end": 29492,
                                  "loc": {
                                    "start": {
                                      "line": 691,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 691,
                                      "column": 31
                                    }
                                  },
                                  "name": "substrate"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 29493,
                                  "end": 29501,
                                  "loc": {
                                    "start": {
                                      "line": 691,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 691,
                                      "column": 40
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 29502,
                                "end": 29503,
                                "loc": {
                                  "start": {
                                    "line": 691,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 691,
                                    "column": 42
                                  }
                                },
                                "name": "y"
                              },
                              "computed": false
                            },
                            "operator": "+",
                            "right": {
                              "type": "MemberExpression",
                              "start": 29506,
                              "end": 29520,
                              "loc": {
                                "start": {
                                  "line": 691,
                                  "column": 45
                                },
                                "end": {
                                  "line": 691,
                                  "column": 59
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 29506,
                                "end": 29518,
                                "loc": {
                                  "start": {
                                    "line": 691,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 691,
                                    "column": 57
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 29506,
                                  "end": 29509,
                                  "loc": {
                                    "start": {
                                      "line": 691,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 691,
                                      "column": 48
                                    }
                                  },
                                  "name": "obj"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 29510,
                                  "end": 29518,
                                  "loc": {
                                    "start": {
                                      "line": 691,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 691,
                                      "column": 57
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 29519,
                                "end": 29520,
                                "loc": {
                                  "start": {
                                    "line": 691,
                                    "column": 58
                                  },
                                  "end": {
                                    "line": 691,
                                    "column": 59
                                  }
                                },
                                "name": "y"
                              },
                              "computed": false
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ForStatement",
                      "start": 29531,
                      "end": 29657,
                      "loc": {
                        "start": {
                          "line": 692,
                          "column": 8
                        },
                        "end": {
                          "line": 694,
                          "column": 9
                        }
                      },
                      "init": {
                        "type": "VariableDeclaration",
                        "start": 29536,
                        "end": 29545,
                        "loc": {
                          "start": {
                            "line": 692,
                            "column": 13
                          },
                          "end": {
                            "line": 692,
                            "column": 22
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 29540,
                            "end": 29545,
                            "loc": {
                              "start": {
                                "line": 692,
                                "column": 17
                              },
                              "end": {
                                "line": 692,
                                "column": 22
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 29540,
                              "end": 29541,
                              "loc": {
                                "start": {
                                  "line": 692,
                                  "column": 17
                                },
                                "end": {
                                  "line": 692,
                                  "column": 18
                                }
                              },
                              "name": "i"
                            },
                            "init": {
                              "type": "Literal",
                              "start": 29544,
                              "end": 29545,
                              "loc": {
                                "start": {
                                  "line": 692,
                                  "column": 21
                                },
                                "end": {
                                  "line": 692,
                                  "column": 22
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          }
                        ],
                        "kind": "var"
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 29547,
                        "end": 29554,
                        "loc": {
                          "start": {
                            "line": 692,
                            "column": 24
                          },
                          "end": {
                            "line": 692,
                            "column": 31
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 29547,
                          "end": 29548,
                          "loc": {
                            "start": {
                              "line": 692,
                              "column": 24
                            },
                            "end": {
                              "line": 692,
                              "column": 25
                            }
                          },
                          "name": "i"
                        },
                        "operator": "<",
                        "right": {
                          "type": "Identifier",
                          "start": 29551,
                          "end": 29554,
                          "loc": {
                            "start": {
                              "line": 692,
                              "column": 28
                            },
                            "end": {
                              "line": 692,
                              "column": 31
                            }
                          },
                          "name": "len"
                        }
                      },
                      "update": {
                        "type": "UpdateExpression",
                        "start": 29556,
                        "end": 29559,
                        "loc": {
                          "start": {
                            "line": 692,
                            "column": 33
                          },
                          "end": {
                            "line": 692,
                            "column": 36
                          }
                        },
                        "operator": "++",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 29558,
                          "end": 29559,
                          "loc": {
                            "start": {
                              "line": 692,
                              "column": 35
                            },
                            "end": {
                              "line": 692,
                              "column": 36
                            }
                          },
                          "name": "i"
                        }
                      },
                      "body": {
                        "type": "BlockStatement",
                        "start": 29561,
                        "end": 29657,
                        "loc": {
                          "start": {
                            "line": 692,
                            "column": 38
                          },
                          "end": {
                            "line": 694,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 29576,
                            "end": 29646,
                            "loc": {
                              "start": {
                                "line": 693,
                                "column": 12
                              },
                              "end": {
                                "line": 693,
                                "column": 82
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 29576,
                              "end": 29645,
                              "loc": {
                                "start": {
                                  "line": 693,
                                  "column": 12
                                },
                                "end": {
                                  "line": 693,
                                  "column": 81
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 29576,
                                "end": 29603,
                                "loc": {
                                  "start": {
                                    "line": 693,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 693,
                                    "column": 39
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 29576,
                                  "end": 29599,
                                  "loc": {
                                    "start": {
                                      "line": 693,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 693,
                                      "column": 35
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 29576,
                                    "end": 29590,
                                    "loc": {
                                      "start": {
                                        "line": 693,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 693,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 29576,
                                      "end": 29587,
                                      "loc": {
                                        "start": {
                                          "line": 693,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 693,
                                          "column": 23
                                        }
                                      },
                                      "name": "constraints"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 29588,
                                      "end": 29589,
                                      "loc": {
                                        "start": {
                                          "line": 693,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 693,
                                          "column": 25
                                        }
                                      },
                                      "name": "i"
                                    },
                                    "computed": true
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 29591,
                                    "end": 29599,
                                    "loc": {
                                      "start": {
                                        "line": 693,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 693,
                                        "column": 35
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 29600,
                                  "end": 29603,
                                  "loc": {
                                    "start": {
                                      "line": 693,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 693,
                                      "column": 39
                                    }
                                  },
                                  "name": "set"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 29604,
                                  "end": 29632,
                                  "loc": {
                                    "start": {
                                      "line": 693,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 693,
                                      "column": 68
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 29604,
                                    "end": 29613,
                                    "loc": {
                                      "start": {
                                        "line": 693,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 693,
                                        "column": 49
                                      }
                                    },
                                    "name": "mostLeftX"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 29616,
                                    "end": 29632,
                                    "loc": {
                                      "start": {
                                        "line": 693,
                                        "column": 52
                                      },
                                      "end": {
                                        "line": 693,
                                        "column": 68
                                      }
                                    },
                                    "left": {
                                      "type": "BinaryExpression",
                                      "start": 29617,
                                      "end": 29624,
                                      "loc": {
                                        "start": {
                                          "line": 693,
                                          "column": 53
                                        },
                                        "end": {
                                          "line": 693,
                                          "column": 60
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 29617,
                                        "end": 29618,
                                        "loc": {
                                          "start": {
                                            "line": 693,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 693,
                                            "column": 54
                                          }
                                        },
                                        "name": "i"
                                      },
                                      "operator": "+",
                                      "right": {
                                        "type": "Literal",
                                        "start": 29621,
                                        "end": 29624,
                                        "loc": {
                                          "start": {
                                            "line": 693,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 693,
                                            "column": 60
                                          }
                                        },
                                        "value": 0.5,
                                        "rawValue": 0.5,
                                        "raw": "0.5"
                                      },
                                      "parenthesizedExpression": true
                                    },
                                    "operator": "*",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 29628,
                                      "end": 29632,
                                      "loc": {
                                        "start": {
                                          "line": 693,
                                          "column": 64
                                        },
                                        "end": {
                                          "line": 693,
                                          "column": 68
                                        }
                                      },
                                      "name": "size"
                                    }
                                  }
                                },
                                {
                                  "type": "Identifier",
                                  "start": 29634,
                                  "end": 29641,
                                  "loc": {
                                    "start": {
                                      "line": 693,
                                      "column": 70
                                    },
                                    "end": {
                                      "line": 693,
                                      "column": 77
                                    }
                                  },
                                  "name": "middleY"
                                },
                                {
                                  "type": "Literal",
                                  "start": 29643,
                                  "end": 29644,
                                  "loc": {
                                    "start": {
                                      "line": 693,
                                      "column": 79
                                    },
                                    "end": {
                                      "line": 693,
                                      "column": 80
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 29672,
              "end": 29852,
              "loc": {
                "start": {
                  "line": 697,
                  "column": 4
                },
                "end": {
                  "line": 702,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 29672,
                "end": 29680,
                "loc": {
                  "start": {
                    "line": 697,
                    "column": 4
                  },
                  "end": {
                    "line": 697,
                    "column": 12
                  }
                },
                "name": "getState"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 29680,
                "end": 29852,
                "loc": {
                  "start": {
                    "line": 697,
                    "column": 12
                  },
                  "end": {
                    "line": 702,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 29683,
                  "end": 29852,
                  "loc": {
                    "start": {
                      "line": 697,
                      "column": 15
                    },
                    "end": {
                      "line": 702,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 29694,
                      "end": 29716,
                      "loc": {
                        "start": {
                          "line": 698,
                          "column": 8
                        },
                        "end": {
                          "line": 698,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 29698,
                          "end": 29715,
                          "loc": {
                            "start": {
                              "line": 698,
                              "column": 12
                            },
                            "end": {
                              "line": 698,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 29698,
                            "end": 29703,
                            "loc": {
                              "start": {
                                "line": 698,
                                "column": 12
                              },
                              "end": {
                                "line": 698,
                                "column": 17
                              }
                            },
                            "name": "state"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 29706,
                            "end": 29715,
                            "loc": {
                              "start": {
                                "line": 698,
                                "column": 20
                              },
                              "end": {
                                "line": 698,
                                "column": 29
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 29710,
                              "end": 29713,
                              "loc": {
                                "start": {
                                  "line": 698,
                                  "column": 24
                                },
                                "end": {
                                  "line": 698,
                                  "column": 27
                                }
                              },
                              "name": "Map"
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ForOfStatement",
                      "start": 29726,
                      "end": 29822,
                      "loc": {
                        "start": {
                          "line": 699,
                          "column": 8
                        },
                        "end": {
                          "line": 700,
                          "column": 49
                        }
                      },
                      "left": {
                        "type": "VariableDeclaration",
                        "start": 29731,
                        "end": 29741,
                        "loc": {
                          "start": {
                            "line": 699,
                            "column": 13
                          },
                          "end": {
                            "line": 699,
                            "column": 23
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 29735,
                            "end": 29741,
                            "loc": {
                              "start": {
                                "line": 699,
                                "column": 17
                              },
                              "end": {
                                "line": 699,
                                "column": 23
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 29735,
                              "end": 29741,
                              "loc": {
                                "start": {
                                  "line": 699,
                                  "column": 17
                                },
                                "end": {
                                  "line": 699,
                                  "column": 23
                                }
                              },
                              "name": "object"
                            },
                            "init": null
                          }
                        ],
                        "kind": "var"
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 29745,
                        "end": 29770,
                        "loc": {
                          "start": {
                            "line": 699,
                            "column": 27
                          },
                          "end": {
                            "line": 699,
                            "column": 52
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 29745,
                          "end": 29768,
                          "loc": {
                            "start": {
                              "line": 699,
                              "column": 27
                            },
                            "end": {
                              "line": 699,
                              "column": 50
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 29745,
                            "end": 29749,
                            "loc": {
                              "start": {
                                "line": 699,
                                "column": 27
                              },
                              "end": {
                                "line": 699,
                                "column": 31
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 29750,
                            "end": 29768,
                            "loc": {
                              "start": {
                                "line": 699,
                                "column": 32
                              },
                              "end": {
                                "line": 699,
                                "column": 50
                              }
                            },
                            "name": "getObjectsOnSketch"
                          },
                          "computed": false
                        },
                        "arguments": []
                      },
                      "body": {
                        "type": "ExpressionStatement",
                        "start": 29785,
                        "end": 29822,
                        "loc": {
                          "start": {
                            "line": 700,
                            "column": 12
                          },
                          "end": {
                            "line": 700,
                            "column": 49
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 29785,
                          "end": 29821,
                          "loc": {
                            "start": {
                              "line": 700,
                              "column": 12
                            },
                            "end": {
                              "line": 700,
                              "column": 48
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 29785,
                            "end": 29794,
                            "loc": {
                              "start": {
                                "line": 700,
                                "column": 12
                              },
                              "end": {
                                "line": 700,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 29785,
                              "end": 29790,
                              "loc": {
                                "start": {
                                  "line": 700,
                                  "column": 12
                                },
                                "end": {
                                  "line": 700,
                                  "column": 17
                                }
                              },
                              "name": "state"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 29791,
                              "end": 29794,
                              "loc": {
                                "start": {
                                  "line": 700,
                                  "column": 18
                                },
                                "end": {
                                  "line": 700,
                                  "column": 21
                                }
                              },
                              "name": "set"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 29795,
                              "end": 29801,
                              "loc": {
                                "start": {
                                  "line": 700,
                                  "column": 22
                                },
                                "end": {
                                  "line": 700,
                                  "column": 28
                                }
                              },
                              "name": "object"
                            },
                            {
                              "type": "CallExpression",
                              "start": 29803,
                              "end": 29820,
                              "loc": {
                                "start": {
                                  "line": 700,
                                  "column": 30
                                },
                                "end": {
                                  "line": 700,
                                  "column": 47
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 29803,
                                "end": 29818,
                                "loc": {
                                  "start": {
                                    "line": 700,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 700,
                                    "column": 45
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 29803,
                                  "end": 29809,
                                  "loc": {
                                    "start": {
                                      "line": 700,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 700,
                                      "column": 36
                                    }
                                  },
                                  "name": "object"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 29810,
                                  "end": 29818,
                                  "loc": {
                                    "start": {
                                      "line": 700,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 700,
                                      "column": 45
                                    }
                                  },
                                  "name": "getState"
                                },
                                "computed": false
                              },
                              "arguments": []
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 29832,
                      "end": 29845,
                      "loc": {
                        "start": {
                          "line": 701,
                          "column": 8
                        },
                        "end": {
                          "line": 701,
                          "column": 21
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 29839,
                        "end": 29844,
                        "loc": {
                          "start": {
                            "line": 701,
                            "column": 15
                          },
                          "end": {
                            "line": 701,
                            "column": 20
                          }
                        },
                        "name": "state"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 29860,
              "end": 32121,
              "loc": {
                "start": {
                  "line": 704,
                  "column": 4
                },
                "end": {
                  "line": 751,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 29860,
                "end": 29886,
                "loc": {
                  "start": {
                    "line": 704,
                    "column": 4
                  },
                  "end": {
                    "line": 704,
                    "column": 30
                  }
                },
                "name": "getStateLinearContinuation"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 29886,
                "end": 32121,
                "loc": {
                  "start": {
                    "line": 704,
                    "column": 30
                  },
                  "end": {
                    "line": 751,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 29887,
                    "end": 29893,
                    "loc": {
                      "start": {
                        "line": 704,
                        "column": 31
                      },
                      "end": {
                        "line": 704,
                        "column": 37
                      }
                    },
                    "name": "states"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 29895,
                  "end": 32121,
                  "loc": {
                    "start": {
                      "line": 704,
                      "column": 39
                    },
                    "end": {
                      "line": 751,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 29906,
                      "end": 29959,
                      "loc": {
                        "start": {
                          "line": 705,
                          "column": 8
                        },
                        "end": {
                          "line": 705,
                          "column": 61
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 29910,
                        "end": 29950,
                        "loc": {
                          "start": {
                            "line": 705,
                            "column": 12
                          },
                          "end": {
                            "line": 705,
                            "column": 52
                          }
                        },
                        "left": {
                          "type": "BinaryExpression",
                          "start": 29910,
                          "end": 29928,
                          "loc": {
                            "start": {
                              "line": 705,
                              "column": 12
                            },
                            "end": {
                              "line": 705,
                              "column": 30
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 29910,
                            "end": 29919,
                            "loc": {
                              "start": {
                                "line": 705,
                                "column": 12
                              },
                              "end": {
                                "line": 705,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 29910,
                              "end": 29916,
                              "loc": {
                                "start": {
                                  "line": 705,
                                  "column": 12
                                },
                                "end": {
                                  "line": 705,
                                  "column": 18
                                }
                              },
                              "name": "states"
                            },
                            "property": {
                              "type": "Literal",
                              "start": 29917,
                              "end": 29918,
                              "loc": {
                                "start": {
                                  "line": 705,
                                  "column": 19
                                },
                                "end": {
                                  "line": 705,
                                  "column": 20
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "computed": true
                          },
                          "operator": "===",
                          "right": {
                            "type": "Literal",
                            "start": 29924,
                            "end": 29928,
                            "loc": {
                              "start": {
                                "line": 705,
                                "column": 26
                              },
                              "end": {
                                "line": 705,
                                "column": 30
                              }
                            },
                            "value": null,
                            "rawValue": null,
                            "raw": "null"
                          }
                        },
                        "operator": "||",
                        "right": {
                          "type": "BinaryExpression",
                          "start": 29932,
                          "end": 29950,
                          "loc": {
                            "start": {
                              "line": 705,
                              "column": 34
                            },
                            "end": {
                              "line": 705,
                              "column": 52
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 29932,
                            "end": 29941,
                            "loc": {
                              "start": {
                                "line": 705,
                                "column": 34
                              },
                              "end": {
                                "line": 705,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 29932,
                              "end": 29938,
                              "loc": {
                                "start": {
                                  "line": 705,
                                  "column": 34
                                },
                                "end": {
                                  "line": 705,
                                  "column": 40
                                }
                              },
                              "name": "states"
                            },
                            "property": {
                              "type": "Literal",
                              "start": 29939,
                              "end": 29940,
                              "loc": {
                                "start": {
                                  "line": 705,
                                  "column": 41
                                },
                                "end": {
                                  "line": 705,
                                  "column": 42
                                }
                              },
                              "value": 1,
                              "rawValue": 1,
                              "raw": "1"
                            },
                            "computed": true
                          },
                          "operator": "===",
                          "right": {
                            "type": "Literal",
                            "start": 29946,
                            "end": 29950,
                            "loc": {
                              "start": {
                                "line": 705,
                                "column": 48
                              },
                              "end": {
                                "line": 705,
                                "column": 52
                              }
                            },
                            "value": null,
                            "rawValue": null,
                            "raw": "null"
                          }
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 29952,
                        "end": 29959,
                        "loc": {
                          "start": {
                            "line": 705,
                            "column": 54
                          },
                          "end": {
                            "line": 705,
                            "column": 61
                          }
                        },
                        "argument": null
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 29969,
                      "end": 29995,
                      "loc": {
                        "start": {
                          "line": 706,
                          "column": 8
                        },
                        "end": {
                          "line": 706,
                          "column": 34
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 29973,
                          "end": 29994,
                          "loc": {
                            "start": {
                              "line": 706,
                              "column": 12
                            },
                            "end": {
                              "line": 706,
                              "column": 33
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 29973,
                            "end": 29982,
                            "loc": {
                              "start": {
                                "line": 706,
                                "column": 12
                              },
                              "end": {
                                "line": 706,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 29985,
                            "end": 29994,
                            "loc": {
                              "start": {
                                "line": 706,
                                "column": 24
                              },
                              "end": {
                                "line": 706,
                                "column": 33
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 29989,
                              "end": 29992,
                              "loc": {
                                "start": {
                                  "line": 706,
                                  "column": 28
                                },
                                "end": {
                                  "line": 706,
                                  "column": 31
                                }
                              },
                              "name": "Map"
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "FunctionDeclaration",
                      "start": 30007,
                      "end": 30283,
                      "loc": {
                        "start": {
                          "line": 708,
                          "column": 8
                        },
                        "end": {
                          "line": 712,
                          "column": 9
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 30016,
                        "end": 30028,
                        "loc": {
                          "start": {
                            "line": 708,
                            "column": 17
                          },
                          "end": {
                            "line": 708,
                            "column": 29
                          }
                        },
                        "name": "getPointDiff"
                      },
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 30030,
                          "end": 30036,
                          "loc": {
                            "start": {
                              "line": 708,
                              "column": 31
                            },
                            "end": {
                              "line": 708,
                              "column": 37
                            }
                          },
                          "name": "states"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 30038,
                        "end": 30283,
                        "loc": {
                          "start": {
                            "line": 708,
                            "column": 39
                          },
                          "end": {
                            "line": 712,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 30053,
                            "end": 30116,
                            "loc": {
                              "start": {
                                "line": 709,
                                "column": 12
                              },
                              "end": {
                                "line": 709,
                                "column": 75
                              }
                            },
                            "test": {
                              "type": "UnaryExpression",
                              "start": 30057,
                              "end": 30079,
                              "loc": {
                                "start": {
                                  "line": 709,
                                  "column": 16
                                },
                                "end": {
                                  "line": 709,
                                  "column": 38
                                }
                              },
                              "operator": "!",
                              "prefix": true,
                              "argument": {
                                "type": "CallExpression",
                                "start": 30058,
                                "end": 30079,
                                "loc": {
                                  "start": {
                                    "line": 709,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 709,
                                    "column": 38
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 30058,
                                  "end": 30071,
                                  "loc": {
                                    "start": {
                                      "line": 709,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 709,
                                      "column": 30
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 30058,
                                    "end": 30063,
                                    "loc": {
                                      "start": {
                                        "line": 709,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 709,
                                        "column": 22
                                      }
                                    },
                                    "name": "Array"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 30064,
                                    "end": 30071,
                                    "loc": {
                                      "start": {
                                        "line": 709,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 709,
                                        "column": 30
                                      }
                                    },
                                    "name": "isArray"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 30072,
                                    "end": 30078,
                                    "loc": {
                                      "start": {
                                        "line": 709,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 709,
                                        "column": 37
                                      }
                                    },
                                    "name": "states"
                                  }
                                ]
                              }
                            },
                            "consequent": {
                              "type": "ReturnStatement",
                              "start": 30081,
                              "end": 30116,
                              "loc": {
                                "start": {
                                  "line": 709,
                                  "column": 40
                                },
                                "end": {
                                  "line": 709,
                                  "column": 75
                                }
                              },
                              "argument": {
                                "type": "NewExpression",
                                "start": 30088,
                                "end": 30115,
                                "loc": {
                                  "start": {
                                    "line": 709,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 709,
                                    "column": 74
                                  }
                                },
                                "callee": {
                                  "type": "Identifier",
                                  "start": 30092,
                                  "end": 30095,
                                  "loc": {
                                    "start": {
                                      "line": 709,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 709,
                                      "column": 54
                                    }
                                  },
                                  "name": "Map"
                                },
                                "arguments": [
                                  {
                                    "type": "ArrayExpression",
                                    "start": 30096,
                                    "end": 30114,
                                    "loc": {
                                      "start": {
                                        "line": 709,
                                        "column": 55
                                      },
                                      "end": {
                                        "line": 709,
                                        "column": 73
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "ArrayExpression",
                                        "start": 30097,
                                        "end": 30104,
                                        "loc": {
                                          "start": {
                                            "line": 709,
                                            "column": 56
                                          },
                                          "end": {
                                            "line": 709,
                                            "column": 63
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "Literal",
                                            "start": 30098,
                                            "end": 30101,
                                            "loc": {
                                              "start": {
                                                "line": 709,
                                                "column": 57
                                              },
                                              "end": {
                                                "line": 709,
                                                "column": 60
                                              }
                                            },
                                            "value": "x",
                                            "rawValue": "x",
                                            "raw": "'x'"
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 30102,
                                            "end": 30103,
                                            "loc": {
                                              "start": {
                                                "line": 709,
                                                "column": 61
                                              },
                                              "end": {
                                                "line": 709,
                                                "column": 62
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0"
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ArrayExpression",
                                        "start": 30105,
                                        "end": 30113,
                                        "loc": {
                                          "start": {
                                            "line": 709,
                                            "column": 64
                                          },
                                          "end": {
                                            "line": 709,
                                            "column": 72
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "Literal",
                                            "start": 30106,
                                            "end": 30109,
                                            "loc": {
                                              "start": {
                                                "line": 709,
                                                "column": 65
                                              },
                                              "end": {
                                                "line": 709,
                                                "column": 68
                                              }
                                            },
                                            "value": "y",
                                            "rawValue": "y",
                                            "raw": "'y'"
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 30111,
                                            "end": 30112,
                                            "loc": {
                                              "start": {
                                                "line": 709,
                                                "column": 70
                                              },
                                              "end": {
                                                "line": 709,
                                                "column": 71
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0"
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 30130,
                            "end": 30272,
                            "loc": {
                              "start": {
                                "line": 710,
                                "column": 12
                              },
                              "end": {
                                "line": 711,
                                "column": 77
                              }
                            },
                            "argument": {
                              "type": "NewExpression",
                              "start": 30137,
                              "end": 30271,
                              "loc": {
                                "start": {
                                  "line": 710,
                                  "column": 19
                                },
                                "end": {
                                  "line": 711,
                                  "column": 76
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 30141,
                                "end": 30144,
                                "loc": {
                                  "start": {
                                    "line": 710,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 710,
                                    "column": 26
                                  }
                                },
                                "name": "Map"
                              },
                              "arguments": [
                                {
                                  "type": "ArrayExpression",
                                  "start": 30145,
                                  "end": 30270,
                                  "loc": {
                                    "start": {
                                      "line": 710,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 711,
                                      "column": 75
                                    }
                                  },
                                  "elements": [
                                    {
                                      "type": "ArrayExpression",
                                      "start": 30146,
                                      "end": 30192,
                                      "loc": {
                                        "start": {
                                          "line": 710,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 710,
                                          "column": 74
                                        }
                                      },
                                      "elements": [
                                        {
                                          "type": "Literal",
                                          "start": 30147,
                                          "end": 30150,
                                          "loc": {
                                            "start": {
                                              "line": 710,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 710,
                                              "column": 32
                                            }
                                          },
                                          "value": "x",
                                          "rawValue": "x",
                                          "raw": "'x'"
                                        },
                                        {
                                          "type": "BinaryExpression",
                                          "start": 30152,
                                          "end": 30191,
                                          "loc": {
                                            "start": {
                                              "line": 710,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 710,
                                              "column": 73
                                            }
                                          },
                                          "left": {
                                            "type": "CallExpression",
                                            "start": 30152,
                                            "end": 30170,
                                            "loc": {
                                              "start": {
                                                "line": 710,
                                                "column": 34
                                              },
                                              "end": {
                                                "line": 710,
                                                "column": 52
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 30152,
                                              "end": 30165,
                                              "loc": {
                                                "start": {
                                                  "line": 710,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 710,
                                                  "column": 47
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 30152,
                                                "end": 30161,
                                                "loc": {
                                                  "start": {
                                                    "line": 710,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 710,
                                                    "column": 43
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 30152,
                                                  "end": 30158,
                                                  "loc": {
                                                    "start": {
                                                      "line": 710,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 710,
                                                      "column": 40
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 30159,
                                                  "end": 30160,
                                                  "loc": {
                                                    "start": {
                                                      "line": 710,
                                                      "column": 41
                                                    },
                                                    "end": {
                                                      "line": 710,
                                                      "column": 42
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 30162,
                                                "end": 30165,
                                                "loc": {
                                                  "start": {
                                                    "line": 710,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 710,
                                                    "column": 47
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 30166,
                                                "end": 30169,
                                                "loc": {
                                                  "start": {
                                                    "line": 710,
                                                    "column": 48
                                                  },
                                                  "end": {
                                                    "line": 710,
                                                    "column": 51
                                                  }
                                                },
                                                "value": "x",
                                                "rawValue": "x",
                                                "raw": "'x'"
                                              }
                                            ]
                                          },
                                          "operator": "-",
                                          "right": {
                                            "type": "CallExpression",
                                            "start": 30173,
                                            "end": 30191,
                                            "loc": {
                                              "start": {
                                                "line": 710,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 710,
                                                "column": 73
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 30173,
                                              "end": 30186,
                                              "loc": {
                                                "start": {
                                                  "line": 710,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 710,
                                                  "column": 68
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 30173,
                                                "end": 30182,
                                                "loc": {
                                                  "start": {
                                                    "line": 710,
                                                    "column": 55
                                                  },
                                                  "end": {
                                                    "line": 710,
                                                    "column": 64
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 30173,
                                                  "end": 30179,
                                                  "loc": {
                                                    "start": {
                                                      "line": 710,
                                                      "column": 55
                                                    },
                                                    "end": {
                                                      "line": 710,
                                                      "column": 61
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 30180,
                                                  "end": 30181,
                                                  "loc": {
                                                    "start": {
                                                      "line": 710,
                                                      "column": 62
                                                    },
                                                    "end": {
                                                      "line": 710,
                                                      "column": 63
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 30183,
                                                "end": 30186,
                                                "loc": {
                                                  "start": {
                                                    "line": 710,
                                                    "column": 65
                                                  },
                                                  "end": {
                                                    "line": 710,
                                                    "column": 68
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 30187,
                                                "end": 30190,
                                                "loc": {
                                                  "start": {
                                                    "line": 710,
                                                    "column": 69
                                                  },
                                                  "end": {
                                                    "line": 710,
                                                    "column": 72
                                                  }
                                                },
                                                "value": "x",
                                                "rawValue": "x",
                                                "raw": "'x'"
                                              }
                                            ]
                                          }
                                        }
                                      ]
                                    },
                                    {
                                      "type": "ArrayExpression",
                                      "start": 30223,
                                      "end": 30269,
                                      "loc": {
                                        "start": {
                                          "line": 711,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 711,
                                          "column": 74
                                        }
                                      },
                                      "elements": [
                                        {
                                          "type": "Literal",
                                          "start": 30224,
                                          "end": 30227,
                                          "loc": {
                                            "start": {
                                              "line": 711,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 711,
                                              "column": 32
                                            }
                                          },
                                          "value": "y",
                                          "rawValue": "y",
                                          "raw": "'y'"
                                        },
                                        {
                                          "type": "BinaryExpression",
                                          "start": 30229,
                                          "end": 30268,
                                          "loc": {
                                            "start": {
                                              "line": 711,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 711,
                                              "column": 73
                                            }
                                          },
                                          "left": {
                                            "type": "CallExpression",
                                            "start": 30229,
                                            "end": 30247,
                                            "loc": {
                                              "start": {
                                                "line": 711,
                                                "column": 34
                                              },
                                              "end": {
                                                "line": 711,
                                                "column": 52
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 30229,
                                              "end": 30242,
                                              "loc": {
                                                "start": {
                                                  "line": 711,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 711,
                                                  "column": 47
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 30229,
                                                "end": 30238,
                                                "loc": {
                                                  "start": {
                                                    "line": 711,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 711,
                                                    "column": 43
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 30229,
                                                  "end": 30235,
                                                  "loc": {
                                                    "start": {
                                                      "line": 711,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 711,
                                                      "column": 40
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 30236,
                                                  "end": 30237,
                                                  "loc": {
                                                    "start": {
                                                      "line": 711,
                                                      "column": 41
                                                    },
                                                    "end": {
                                                      "line": 711,
                                                      "column": 42
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 30239,
                                                "end": 30242,
                                                "loc": {
                                                  "start": {
                                                    "line": 711,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 711,
                                                    "column": 47
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 30243,
                                                "end": 30246,
                                                "loc": {
                                                  "start": {
                                                    "line": 711,
                                                    "column": 48
                                                  },
                                                  "end": {
                                                    "line": 711,
                                                    "column": 51
                                                  }
                                                },
                                                "value": "y",
                                                "rawValue": "y",
                                                "raw": "'y'"
                                              }
                                            ]
                                          },
                                          "operator": "-",
                                          "right": {
                                            "type": "CallExpression",
                                            "start": 30250,
                                            "end": 30268,
                                            "loc": {
                                              "start": {
                                                "line": 711,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 711,
                                                "column": 73
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 30250,
                                              "end": 30263,
                                              "loc": {
                                                "start": {
                                                  "line": 711,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 711,
                                                  "column": 68
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 30250,
                                                "end": 30259,
                                                "loc": {
                                                  "start": {
                                                    "line": 711,
                                                    "column": 55
                                                  },
                                                  "end": {
                                                    "line": 711,
                                                    "column": 64
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 30250,
                                                  "end": 30256,
                                                  "loc": {
                                                    "start": {
                                                      "line": 711,
                                                      "column": 55
                                                    },
                                                    "end": {
                                                      "line": 711,
                                                      "column": 61
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 30257,
                                                  "end": 30258,
                                                  "loc": {
                                                    "start": {
                                                      "line": 711,
                                                      "column": 62
                                                    },
                                                    "end": {
                                                      "line": 711,
                                                      "column": 63
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 30260,
                                                "end": 30263,
                                                "loc": {
                                                  "start": {
                                                    "line": 711,
                                                    "column": 65
                                                  },
                                                  "end": {
                                                    "line": 711,
                                                    "column": 68
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 30264,
                                                "end": 30267,
                                                "loc": {
                                                  "start": {
                                                    "line": 711,
                                                    "column": 69
                                                  },
                                                  "end": {
                                                    "line": 711,
                                                    "column": 72
                                                  }
                                                },
                                                "value": "y",
                                                "rawValue": "y",
                                                "raw": "'y'"
                                              }
                                            ]
                                          }
                                        }
                                      ]
                                    }
                                  ]
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "FunctionDeclaration",
                      "start": 30295,
                      "end": 30770,
                      "loc": {
                        "start": {
                          "line": 714,
                          "column": 8
                        },
                        "end": {
                          "line": 721,
                          "column": 9
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 30304,
                        "end": 30315,
                        "loc": {
                          "start": {
                            "line": 714,
                            "column": 17
                          },
                          "end": {
                            "line": 714,
                            "column": 28
                          }
                        },
                        "name": "getLineDiff"
                      },
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 30317,
                          "end": 30323,
                          "loc": {
                            "start": {
                              "line": 714,
                              "column": 30
                            },
                            "end": {
                              "line": 714,
                              "column": 36
                            }
                          },
                          "name": "object"
                        },
                        {
                          "type": "Identifier",
                          "start": 30325,
                          "end": 30331,
                          "loc": {
                            "start": {
                              "line": 714,
                              "column": 38
                            },
                            "end": {
                              "line": 714,
                              "column": 44
                            }
                          },
                          "name": "states"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 30333,
                        "end": 30770,
                        "loc": {
                          "start": {
                            "line": 714,
                            "column": 46
                          },
                          "end": {
                            "line": 721,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 30348,
                            "end": 30377,
                            "loc": {
                              "start": {
                                "line": 715,
                                "column": 12
                              },
                              "end": {
                                "line": 715,
                                "column": 41
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 30352,
                                "end": 30376,
                                "loc": {
                                  "start": {
                                    "line": 715,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 715,
                                    "column": 40
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 30352,
                                  "end": 30364,
                                  "loc": {
                                    "start": {
                                      "line": 715,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 715,
                                      "column": 28
                                    }
                                  },
                                  "name": "subStateDiff"
                                },
                                "init": {
                                  "type": "NewExpression",
                                  "start": 30367,
                                  "end": 30376,
                                  "loc": {
                                    "start": {
                                      "line": 715,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 715,
                                      "column": 40
                                    }
                                  },
                                  "callee": {
                                    "type": "Identifier",
                                    "start": 30371,
                                    "end": 30374,
                                    "loc": {
                                      "start": {
                                        "line": 715,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 715,
                                        "column": 38
                                      }
                                    },
                                    "name": "Map"
                                  },
                                  "arguments": []
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "IfStatement",
                            "start": 30391,
                            "end": 30547,
                            "loc": {
                              "start": {
                                "line": 716,
                                "column": 12
                              },
                              "end": {
                                "line": 717,
                                "column": 122
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 30395,
                              "end": 30422,
                              "loc": {
                                "start": {
                                  "line": 716,
                                  "column": 16
                                },
                                "end": {
                                  "line": 716,
                                  "column": 43
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 30395,
                                "end": 30408,
                                "loc": {
                                  "start": {
                                    "line": 716,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 716,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 30395,
                                  "end": 30404,
                                  "loc": {
                                    "start": {
                                      "line": 716,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 716,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 30395,
                                    "end": 30401,
                                    "loc": {
                                      "start": {
                                        "line": 716,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 716,
                                        "column": 22
                                      }
                                    },
                                    "name": "states"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 30402,
                                    "end": 30403,
                                    "loc": {
                                      "start": {
                                        "line": 716,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 716,
                                        "column": 24
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 30405,
                                  "end": 30408,
                                  "loc": {
                                    "start": {
                                      "line": 716,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 716,
                                      "column": 29
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 30409,
                                  "end": 30421,
                                  "loc": {
                                    "start": {
                                      "line": 716,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 716,
                                      "column": 42
                                    }
                                  },
                                  "value": "startPoint",
                                  "rawValue": "startPoint",
                                  "raw": "'startPoint'"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 30441,
                              "end": 30547,
                              "loc": {
                                "start": {
                                  "line": 717,
                                  "column": 16
                                },
                                "end": {
                                  "line": 717,
                                  "column": 122
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 30441,
                                "end": 30546,
                                "loc": {
                                  "start": {
                                    "line": 717,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 717,
                                    "column": 121
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 30441,
                                  "end": 30457,
                                  "loc": {
                                    "start": {
                                      "line": 717,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 717,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 30441,
                                    "end": 30453,
                                    "loc": {
                                      "start": {
                                        "line": 717,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 717,
                                        "column": 28
                                      }
                                    },
                                    "name": "subStateDiff"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 30454,
                                    "end": 30457,
                                    "loc": {
                                      "start": {
                                        "line": 717,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 717,
                                        "column": 32
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 30458,
                                    "end": 30470,
                                    "loc": {
                                      "start": {
                                        "line": 717,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 717,
                                        "column": 45
                                      }
                                    },
                                    "value": "startPoint",
                                    "rawValue": "startPoint",
                                    "raw": "'startPoint'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 30472,
                                    "end": 30545,
                                    "loc": {
                                      "start": {
                                        "line": 717,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 717,
                                        "column": 120
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 30472,
                                      "end": 30484,
                                      "loc": {
                                        "start": {
                                          "line": 717,
                                          "column": 47
                                        },
                                        "end": {
                                          "line": 717,
                                          "column": 59
                                        }
                                      },
                                      "name": "getPointDiff"
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrayExpression",
                                        "start": 30486,
                                        "end": 30544,
                                        "loc": {
                                          "start": {
                                            "line": 717,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 717,
                                            "column": 119
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "CallExpression",
                                            "start": 30487,
                                            "end": 30514,
                                            "loc": {
                                              "start": {
                                                "line": 717,
                                                "column": 62
                                              },
                                              "end": {
                                                "line": 717,
                                                "column": 89
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 30487,
                                              "end": 30500,
                                              "loc": {
                                                "start": {
                                                  "line": 717,
                                                  "column": 62
                                                },
                                                "end": {
                                                  "line": 717,
                                                  "column": 75
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 30487,
                                                "end": 30496,
                                                "loc": {
                                                  "start": {
                                                    "line": 717,
                                                    "column": 62
                                                  },
                                                  "end": {
                                                    "line": 717,
                                                    "column": 71
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 30487,
                                                  "end": 30493,
                                                  "loc": {
                                                    "start": {
                                                      "line": 717,
                                                      "column": 62
                                                    },
                                                    "end": {
                                                      "line": 717,
                                                      "column": 68
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 30494,
                                                  "end": 30495,
                                                  "loc": {
                                                    "start": {
                                                      "line": 717,
                                                      "column": 69
                                                    },
                                                    "end": {
                                                      "line": 717,
                                                      "column": 70
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 30497,
                                                "end": 30500,
                                                "loc": {
                                                  "start": {
                                                    "line": 717,
                                                    "column": 72
                                                  },
                                                  "end": {
                                                    "line": 717,
                                                    "column": 75
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 30501,
                                                "end": 30513,
                                                "loc": {
                                                  "start": {
                                                    "line": 717,
                                                    "column": 76
                                                  },
                                                  "end": {
                                                    "line": 717,
                                                    "column": 88
                                                  }
                                                },
                                                "value": "startPoint",
                                                "rawValue": "startPoint",
                                                "raw": "'startPoint'"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "CallExpression",
                                            "start": 30516,
                                            "end": 30543,
                                            "loc": {
                                              "start": {
                                                "line": 717,
                                                "column": 91
                                              },
                                              "end": {
                                                "line": 717,
                                                "column": 118
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 30516,
                                              "end": 30529,
                                              "loc": {
                                                "start": {
                                                  "line": 717,
                                                  "column": 91
                                                },
                                                "end": {
                                                  "line": 717,
                                                  "column": 104
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 30516,
                                                "end": 30525,
                                                "loc": {
                                                  "start": {
                                                    "line": 717,
                                                    "column": 91
                                                  },
                                                  "end": {
                                                    "line": 717,
                                                    "column": 100
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 30516,
                                                  "end": 30522,
                                                  "loc": {
                                                    "start": {
                                                      "line": 717,
                                                      "column": 91
                                                    },
                                                    "end": {
                                                      "line": 717,
                                                      "column": 97
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 30523,
                                                  "end": 30524,
                                                  "loc": {
                                                    "start": {
                                                      "line": 717,
                                                      "column": 98
                                                    },
                                                    "end": {
                                                      "line": 717,
                                                      "column": 99
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 30526,
                                                "end": 30529,
                                                "loc": {
                                                  "start": {
                                                    "line": 717,
                                                    "column": 101
                                                  },
                                                  "end": {
                                                    "line": 717,
                                                    "column": 104
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 30530,
                                                "end": 30542,
                                                "loc": {
                                                  "start": {
                                                    "line": 717,
                                                    "column": 105
                                                  },
                                                  "end": {
                                                    "line": 717,
                                                    "column": 117
                                                  }
                                                },
                                                "value": "startPoint",
                                                "rawValue": "startPoint",
                                                "raw": "'startPoint'"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "IfStatement",
                            "start": 30561,
                            "end": 30709,
                            "loc": {
                              "start": {
                                "line": 718,
                                "column": 12
                              },
                              "end": {
                                "line": 719,
                                "column": 116
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 30565,
                              "end": 30590,
                              "loc": {
                                "start": {
                                  "line": 718,
                                  "column": 16
                                },
                                "end": {
                                  "line": 718,
                                  "column": 41
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 30565,
                                "end": 30578,
                                "loc": {
                                  "start": {
                                    "line": 718,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 718,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 30565,
                                  "end": 30574,
                                  "loc": {
                                    "start": {
                                      "line": 718,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 718,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 30565,
                                    "end": 30571,
                                    "loc": {
                                      "start": {
                                        "line": 718,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 718,
                                        "column": 22
                                      }
                                    },
                                    "name": "states"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 30572,
                                    "end": 30573,
                                    "loc": {
                                      "start": {
                                        "line": 718,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 718,
                                        "column": 24
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 30575,
                                  "end": 30578,
                                  "loc": {
                                    "start": {
                                      "line": 718,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 718,
                                      "column": 29
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 30579,
                                  "end": 30589,
                                  "loc": {
                                    "start": {
                                      "line": 718,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 718,
                                      "column": 40
                                    }
                                  },
                                  "value": "endPoint",
                                  "rawValue": "endPoint",
                                  "raw": "'endPoint'"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 30609,
                              "end": 30709,
                              "loc": {
                                "start": {
                                  "line": 719,
                                  "column": 16
                                },
                                "end": {
                                  "line": 719,
                                  "column": 116
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 30609,
                                "end": 30708,
                                "loc": {
                                  "start": {
                                    "line": 719,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 719,
                                    "column": 115
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 30609,
                                  "end": 30625,
                                  "loc": {
                                    "start": {
                                      "line": 719,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 719,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 30609,
                                    "end": 30621,
                                    "loc": {
                                      "start": {
                                        "line": 719,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 719,
                                        "column": 28
                                      }
                                    },
                                    "name": "subStateDiff"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 30622,
                                    "end": 30625,
                                    "loc": {
                                      "start": {
                                        "line": 719,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 719,
                                        "column": 32
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 30626,
                                    "end": 30636,
                                    "loc": {
                                      "start": {
                                        "line": 719,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 719,
                                        "column": 43
                                      }
                                    },
                                    "value": "endPoint",
                                    "rawValue": "endPoint",
                                    "raw": "'endPoint'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 30638,
                                    "end": 30707,
                                    "loc": {
                                      "start": {
                                        "line": 719,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 719,
                                        "column": 114
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 30638,
                                      "end": 30650,
                                      "loc": {
                                        "start": {
                                          "line": 719,
                                          "column": 45
                                        },
                                        "end": {
                                          "line": 719,
                                          "column": 57
                                        }
                                      },
                                      "name": "getPointDiff"
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrayExpression",
                                        "start": 30652,
                                        "end": 30706,
                                        "loc": {
                                          "start": {
                                            "line": 719,
                                            "column": 59
                                          },
                                          "end": {
                                            "line": 719,
                                            "column": 113
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "CallExpression",
                                            "start": 30653,
                                            "end": 30678,
                                            "loc": {
                                              "start": {
                                                "line": 719,
                                                "column": 60
                                              },
                                              "end": {
                                                "line": 719,
                                                "column": 85
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 30653,
                                              "end": 30666,
                                              "loc": {
                                                "start": {
                                                  "line": 719,
                                                  "column": 60
                                                },
                                                "end": {
                                                  "line": 719,
                                                  "column": 73
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 30653,
                                                "end": 30662,
                                                "loc": {
                                                  "start": {
                                                    "line": 719,
                                                    "column": 60
                                                  },
                                                  "end": {
                                                    "line": 719,
                                                    "column": 69
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 30653,
                                                  "end": 30659,
                                                  "loc": {
                                                    "start": {
                                                      "line": 719,
                                                      "column": 60
                                                    },
                                                    "end": {
                                                      "line": 719,
                                                      "column": 66
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 30660,
                                                  "end": 30661,
                                                  "loc": {
                                                    "start": {
                                                      "line": 719,
                                                      "column": 67
                                                    },
                                                    "end": {
                                                      "line": 719,
                                                      "column": 68
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 30663,
                                                "end": 30666,
                                                "loc": {
                                                  "start": {
                                                    "line": 719,
                                                    "column": 70
                                                  },
                                                  "end": {
                                                    "line": 719,
                                                    "column": 73
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 30667,
                                                "end": 30677,
                                                "loc": {
                                                  "start": {
                                                    "line": 719,
                                                    "column": 74
                                                  },
                                                  "end": {
                                                    "line": 719,
                                                    "column": 84
                                                  }
                                                },
                                                "value": "endPoint",
                                                "rawValue": "endPoint",
                                                "raw": "'endPoint'"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "CallExpression",
                                            "start": 30680,
                                            "end": 30705,
                                            "loc": {
                                              "start": {
                                                "line": 719,
                                                "column": 87
                                              },
                                              "end": {
                                                "line": 719,
                                                "column": 112
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 30680,
                                              "end": 30693,
                                              "loc": {
                                                "start": {
                                                  "line": 719,
                                                  "column": 87
                                                },
                                                "end": {
                                                  "line": 719,
                                                  "column": 100
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 30680,
                                                "end": 30689,
                                                "loc": {
                                                  "start": {
                                                    "line": 719,
                                                    "column": 87
                                                  },
                                                  "end": {
                                                    "line": 719,
                                                    "column": 96
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 30680,
                                                  "end": 30686,
                                                  "loc": {
                                                    "start": {
                                                      "line": 719,
                                                      "column": 87
                                                    },
                                                    "end": {
                                                      "line": 719,
                                                      "column": 93
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 30687,
                                                  "end": 30688,
                                                  "loc": {
                                                    "start": {
                                                      "line": 719,
                                                      "column": 94
                                                    },
                                                    "end": {
                                                      "line": 719,
                                                      "column": 95
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 30690,
                                                "end": 30693,
                                                "loc": {
                                                  "start": {
                                                    "line": 719,
                                                    "column": 97
                                                  },
                                                  "end": {
                                                    "line": 719,
                                                    "column": 100
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 30694,
                                                "end": 30704,
                                                "loc": {
                                                  "start": {
                                                    "line": 719,
                                                    "column": 101
                                                  },
                                                  "end": {
                                                    "line": 719,
                                                    "column": 111
                                                  }
                                                },
                                                "value": "endPoint",
                                                "rawValue": "endPoint",
                                                "raw": "'endPoint'"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 30723,
                            "end": 30759,
                            "loc": {
                              "start": {
                                "line": 720,
                                "column": 12
                              },
                              "end": {
                                "line": 720,
                                "column": 48
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 30723,
                              "end": 30758,
                              "loc": {
                                "start": {
                                  "line": 720,
                                  "column": 12
                                },
                                "end": {
                                  "line": 720,
                                  "column": 47
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 30723,
                                "end": 30736,
                                "loc": {
                                  "start": {
                                    "line": 720,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 720,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 30723,
                                  "end": 30732,
                                  "loc": {
                                    "start": {
                                      "line": 720,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 720,
                                      "column": 21
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 30733,
                                  "end": 30736,
                                  "loc": {
                                    "start": {
                                      "line": 720,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 720,
                                      "column": 25
                                    }
                                  },
                                  "name": "set"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 30737,
                                  "end": 30743,
                                  "loc": {
                                    "start": {
                                      "line": 720,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 720,
                                      "column": 32
                                    }
                                  },
                                  "name": "object"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 30745,
                                  "end": 30757,
                                  "loc": {
                                    "start": {
                                      "line": 720,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 720,
                                      "column": 46
                                    }
                                  },
                                  "name": "subStateDiff"
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "FunctionDeclaration",
                      "start": 30782,
                      "end": 31533,
                      "loc": {
                        "start": {
                          "line": 723,
                          "column": 8
                        },
                        "end": {
                          "line": 735,
                          "column": 9
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 30791,
                        "end": 30801,
                        "loc": {
                          "start": {
                            "line": 723,
                            "column": 17
                          },
                          "end": {
                            "line": 723,
                            "column": 27
                          }
                        },
                        "name": "getArcDiff"
                      },
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 30803,
                          "end": 30809,
                          "loc": {
                            "start": {
                              "line": 723,
                              "column": 29
                            },
                            "end": {
                              "line": 723,
                              "column": 35
                            }
                          },
                          "name": "object"
                        },
                        {
                          "type": "Identifier",
                          "start": 30811,
                          "end": 30817,
                          "loc": {
                            "start": {
                              "line": 723,
                              "column": 37
                            },
                            "end": {
                              "line": 723,
                              "column": 43
                            }
                          },
                          "name": "states"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 30819,
                        "end": 31533,
                        "loc": {
                          "start": {
                            "line": 723,
                            "column": 45
                          },
                          "end": {
                            "line": 735,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 30836,
                            "end": 30865,
                            "loc": {
                              "start": {
                                "line": 725,
                                "column": 12
                              },
                              "end": {
                                "line": 725,
                                "column": 41
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 30840,
                                "end": 30864,
                                "loc": {
                                  "start": {
                                    "line": 725,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 725,
                                    "column": 40
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 30840,
                                  "end": 30852,
                                  "loc": {
                                    "start": {
                                      "line": 725,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 725,
                                      "column": 28
                                    }
                                  },
                                  "name": "subStateDiff"
                                },
                                "init": {
                                  "type": "NewExpression",
                                  "start": 30855,
                                  "end": 30864,
                                  "loc": {
                                    "start": {
                                      "line": 725,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 725,
                                      "column": 40
                                    }
                                  },
                                  "callee": {
                                    "type": "Identifier",
                                    "start": 30859,
                                    "end": 30862,
                                    "loc": {
                                      "start": {
                                        "line": 725,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 725,
                                        "column": 38
                                      }
                                    },
                                    "name": "Map"
                                  },
                                  "arguments": []
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "IfStatement",
                            "start": 30879,
                            "end": 31035,
                            "loc": {
                              "start": {
                                "line": 726,
                                "column": 12
                              },
                              "end": {
                                "line": 727,
                                "column": 122
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 30883,
                              "end": 30910,
                              "loc": {
                                "start": {
                                  "line": 726,
                                  "column": 16
                                },
                                "end": {
                                  "line": 726,
                                  "column": 43
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 30883,
                                "end": 30896,
                                "loc": {
                                  "start": {
                                    "line": 726,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 726,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 30883,
                                  "end": 30892,
                                  "loc": {
                                    "start": {
                                      "line": 726,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 726,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 30883,
                                    "end": 30889,
                                    "loc": {
                                      "start": {
                                        "line": 726,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 726,
                                        "column": 22
                                      }
                                    },
                                    "name": "states"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 30890,
                                    "end": 30891,
                                    "loc": {
                                      "start": {
                                        "line": 726,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 726,
                                        "column": 24
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 30893,
                                  "end": 30896,
                                  "loc": {
                                    "start": {
                                      "line": 726,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 726,
                                      "column": 29
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 30897,
                                  "end": 30909,
                                  "loc": {
                                    "start": {
                                      "line": 726,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 726,
                                      "column": 42
                                    }
                                  },
                                  "value": "startPoint",
                                  "rawValue": "startPoint",
                                  "raw": "'startPoint'"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 30929,
                              "end": 31035,
                              "loc": {
                                "start": {
                                  "line": 727,
                                  "column": 16
                                },
                                "end": {
                                  "line": 727,
                                  "column": 122
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 30929,
                                "end": 31034,
                                "loc": {
                                  "start": {
                                    "line": 727,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 727,
                                    "column": 121
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 30929,
                                  "end": 30945,
                                  "loc": {
                                    "start": {
                                      "line": 727,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 727,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 30929,
                                    "end": 30941,
                                    "loc": {
                                      "start": {
                                        "line": 727,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 727,
                                        "column": 28
                                      }
                                    },
                                    "name": "subStateDiff"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 30942,
                                    "end": 30945,
                                    "loc": {
                                      "start": {
                                        "line": 727,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 727,
                                        "column": 32
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 30946,
                                    "end": 30958,
                                    "loc": {
                                      "start": {
                                        "line": 727,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 727,
                                        "column": 45
                                      }
                                    },
                                    "value": "startPoint",
                                    "rawValue": "startPoint",
                                    "raw": "'startPoint'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 30960,
                                    "end": 31033,
                                    "loc": {
                                      "start": {
                                        "line": 727,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 727,
                                        "column": 120
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 30960,
                                      "end": 30972,
                                      "loc": {
                                        "start": {
                                          "line": 727,
                                          "column": 47
                                        },
                                        "end": {
                                          "line": 727,
                                          "column": 59
                                        }
                                      },
                                      "name": "getPointDiff"
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrayExpression",
                                        "start": 30974,
                                        "end": 31032,
                                        "loc": {
                                          "start": {
                                            "line": 727,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 727,
                                            "column": 119
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "CallExpression",
                                            "start": 30975,
                                            "end": 31002,
                                            "loc": {
                                              "start": {
                                                "line": 727,
                                                "column": 62
                                              },
                                              "end": {
                                                "line": 727,
                                                "column": 89
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 30975,
                                              "end": 30988,
                                              "loc": {
                                                "start": {
                                                  "line": 727,
                                                  "column": 62
                                                },
                                                "end": {
                                                  "line": 727,
                                                  "column": 75
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 30975,
                                                "end": 30984,
                                                "loc": {
                                                  "start": {
                                                    "line": 727,
                                                    "column": 62
                                                  },
                                                  "end": {
                                                    "line": 727,
                                                    "column": 71
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 30975,
                                                  "end": 30981,
                                                  "loc": {
                                                    "start": {
                                                      "line": 727,
                                                      "column": 62
                                                    },
                                                    "end": {
                                                      "line": 727,
                                                      "column": 68
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 30982,
                                                  "end": 30983,
                                                  "loc": {
                                                    "start": {
                                                      "line": 727,
                                                      "column": 69
                                                    },
                                                    "end": {
                                                      "line": 727,
                                                      "column": 70
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 30985,
                                                "end": 30988,
                                                "loc": {
                                                  "start": {
                                                    "line": 727,
                                                    "column": 72
                                                  },
                                                  "end": {
                                                    "line": 727,
                                                    "column": 75
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 30989,
                                                "end": 31001,
                                                "loc": {
                                                  "start": {
                                                    "line": 727,
                                                    "column": 76
                                                  },
                                                  "end": {
                                                    "line": 727,
                                                    "column": 88
                                                  }
                                                },
                                                "value": "startPoint",
                                                "rawValue": "startPoint",
                                                "raw": "'startPoint'"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "CallExpression",
                                            "start": 31004,
                                            "end": 31031,
                                            "loc": {
                                              "start": {
                                                "line": 727,
                                                "column": 91
                                              },
                                              "end": {
                                                "line": 727,
                                                "column": 118
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 31004,
                                              "end": 31017,
                                              "loc": {
                                                "start": {
                                                  "line": 727,
                                                  "column": 91
                                                },
                                                "end": {
                                                  "line": 727,
                                                  "column": 104
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 31004,
                                                "end": 31013,
                                                "loc": {
                                                  "start": {
                                                    "line": 727,
                                                    "column": 91
                                                  },
                                                  "end": {
                                                    "line": 727,
                                                    "column": 100
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 31004,
                                                  "end": 31010,
                                                  "loc": {
                                                    "start": {
                                                      "line": 727,
                                                      "column": 91
                                                    },
                                                    "end": {
                                                      "line": 727,
                                                      "column": 97
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 31011,
                                                  "end": 31012,
                                                  "loc": {
                                                    "start": {
                                                      "line": 727,
                                                      "column": 98
                                                    },
                                                    "end": {
                                                      "line": 727,
                                                      "column": 99
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 31014,
                                                "end": 31017,
                                                "loc": {
                                                  "start": {
                                                    "line": 727,
                                                    "column": 101
                                                  },
                                                  "end": {
                                                    "line": 727,
                                                    "column": 104
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 31018,
                                                "end": 31030,
                                                "loc": {
                                                  "start": {
                                                    "line": 727,
                                                    "column": 105
                                                  },
                                                  "end": {
                                                    "line": 727,
                                                    "column": 117
                                                  }
                                                },
                                                "value": "startPoint",
                                                "rawValue": "startPoint",
                                                "raw": "'startPoint'"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "IfStatement",
                            "start": 31049,
                            "end": 31197,
                            "loc": {
                              "start": {
                                "line": 728,
                                "column": 12
                              },
                              "end": {
                                "line": 729,
                                "column": 116
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 31053,
                              "end": 31078,
                              "loc": {
                                "start": {
                                  "line": 728,
                                  "column": 16
                                },
                                "end": {
                                  "line": 728,
                                  "column": 41
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 31053,
                                "end": 31066,
                                "loc": {
                                  "start": {
                                    "line": 728,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 728,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 31053,
                                  "end": 31062,
                                  "loc": {
                                    "start": {
                                      "line": 728,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 728,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 31053,
                                    "end": 31059,
                                    "loc": {
                                      "start": {
                                        "line": 728,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 728,
                                        "column": 22
                                      }
                                    },
                                    "name": "states"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 31060,
                                    "end": 31061,
                                    "loc": {
                                      "start": {
                                        "line": 728,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 728,
                                        "column": 24
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 31063,
                                  "end": 31066,
                                  "loc": {
                                    "start": {
                                      "line": 728,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 728,
                                      "column": 29
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 31067,
                                  "end": 31077,
                                  "loc": {
                                    "start": {
                                      "line": 728,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 728,
                                      "column": 40
                                    }
                                  },
                                  "value": "endPoint",
                                  "rawValue": "endPoint",
                                  "raw": "'endPoint'"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 31097,
                              "end": 31197,
                              "loc": {
                                "start": {
                                  "line": 729,
                                  "column": 16
                                },
                                "end": {
                                  "line": 729,
                                  "column": 116
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 31097,
                                "end": 31196,
                                "loc": {
                                  "start": {
                                    "line": 729,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 729,
                                    "column": 115
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 31097,
                                  "end": 31113,
                                  "loc": {
                                    "start": {
                                      "line": 729,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 729,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 31097,
                                    "end": 31109,
                                    "loc": {
                                      "start": {
                                        "line": 729,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 729,
                                        "column": 28
                                      }
                                    },
                                    "name": "subStateDiff"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 31110,
                                    "end": 31113,
                                    "loc": {
                                      "start": {
                                        "line": 729,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 729,
                                        "column": 32
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 31114,
                                    "end": 31124,
                                    "loc": {
                                      "start": {
                                        "line": 729,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 729,
                                        "column": 43
                                      }
                                    },
                                    "value": "endPoint",
                                    "rawValue": "endPoint",
                                    "raw": "'endPoint'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 31126,
                                    "end": 31195,
                                    "loc": {
                                      "start": {
                                        "line": 729,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 729,
                                        "column": 114
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 31126,
                                      "end": 31138,
                                      "loc": {
                                        "start": {
                                          "line": 729,
                                          "column": 45
                                        },
                                        "end": {
                                          "line": 729,
                                          "column": 57
                                        }
                                      },
                                      "name": "getPointDiff"
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrayExpression",
                                        "start": 31140,
                                        "end": 31194,
                                        "loc": {
                                          "start": {
                                            "line": 729,
                                            "column": 59
                                          },
                                          "end": {
                                            "line": 729,
                                            "column": 113
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "CallExpression",
                                            "start": 31141,
                                            "end": 31166,
                                            "loc": {
                                              "start": {
                                                "line": 729,
                                                "column": 60
                                              },
                                              "end": {
                                                "line": 729,
                                                "column": 85
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 31141,
                                              "end": 31154,
                                              "loc": {
                                                "start": {
                                                  "line": 729,
                                                  "column": 60
                                                },
                                                "end": {
                                                  "line": 729,
                                                  "column": 73
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 31141,
                                                "end": 31150,
                                                "loc": {
                                                  "start": {
                                                    "line": 729,
                                                    "column": 60
                                                  },
                                                  "end": {
                                                    "line": 729,
                                                    "column": 69
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 31141,
                                                  "end": 31147,
                                                  "loc": {
                                                    "start": {
                                                      "line": 729,
                                                      "column": 60
                                                    },
                                                    "end": {
                                                      "line": 729,
                                                      "column": 66
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 31148,
                                                  "end": 31149,
                                                  "loc": {
                                                    "start": {
                                                      "line": 729,
                                                      "column": 67
                                                    },
                                                    "end": {
                                                      "line": 729,
                                                      "column": 68
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 31151,
                                                "end": 31154,
                                                "loc": {
                                                  "start": {
                                                    "line": 729,
                                                    "column": 70
                                                  },
                                                  "end": {
                                                    "line": 729,
                                                    "column": 73
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 31155,
                                                "end": 31165,
                                                "loc": {
                                                  "start": {
                                                    "line": 729,
                                                    "column": 74
                                                  },
                                                  "end": {
                                                    "line": 729,
                                                    "column": 84
                                                  }
                                                },
                                                "value": "endPoint",
                                                "rawValue": "endPoint",
                                                "raw": "'endPoint'"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "CallExpression",
                                            "start": 31168,
                                            "end": 31193,
                                            "loc": {
                                              "start": {
                                                "line": 729,
                                                "column": 87
                                              },
                                              "end": {
                                                "line": 729,
                                                "column": 112
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 31168,
                                              "end": 31181,
                                              "loc": {
                                                "start": {
                                                  "line": 729,
                                                  "column": 87
                                                },
                                                "end": {
                                                  "line": 729,
                                                  "column": 100
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 31168,
                                                "end": 31177,
                                                "loc": {
                                                  "start": {
                                                    "line": 729,
                                                    "column": 87
                                                  },
                                                  "end": {
                                                    "line": 729,
                                                    "column": 96
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 31168,
                                                  "end": 31174,
                                                  "loc": {
                                                    "start": {
                                                      "line": 729,
                                                      "column": 87
                                                    },
                                                    "end": {
                                                      "line": 729,
                                                      "column": 93
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 31175,
                                                  "end": 31176,
                                                  "loc": {
                                                    "start": {
                                                      "line": 729,
                                                      "column": 94
                                                    },
                                                    "end": {
                                                      "line": 729,
                                                      "column": 95
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 31178,
                                                "end": 31181,
                                                "loc": {
                                                  "start": {
                                                    "line": 729,
                                                    "column": 97
                                                  },
                                                  "end": {
                                                    "line": 729,
                                                    "column": 100
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 31182,
                                                "end": 31192,
                                                "loc": {
                                                  "start": {
                                                    "line": 729,
                                                    "column": 101
                                                  },
                                                  "end": {
                                                    "line": 729,
                                                    "column": 111
                                                  }
                                                },
                                                "value": "endPoint",
                                                "rawValue": "endPoint",
                                                "raw": "'endPoint'"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "IfStatement",
                            "start": 31211,
                            "end": 31351,
                            "loc": {
                              "start": {
                                "line": 730,
                                "column": 12
                              },
                              "end": {
                                "line": 731,
                                "column": 110
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 31215,
                              "end": 31238,
                              "loc": {
                                "start": {
                                  "line": 730,
                                  "column": 16
                                },
                                "end": {
                                  "line": 730,
                                  "column": 39
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 31215,
                                "end": 31228,
                                "loc": {
                                  "start": {
                                    "line": 730,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 730,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 31215,
                                  "end": 31224,
                                  "loc": {
                                    "start": {
                                      "line": 730,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 730,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 31215,
                                    "end": 31221,
                                    "loc": {
                                      "start": {
                                        "line": 730,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 730,
                                        "column": 22
                                      }
                                    },
                                    "name": "states"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 31222,
                                    "end": 31223,
                                    "loc": {
                                      "start": {
                                        "line": 730,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 730,
                                        "column": 24
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 31225,
                                  "end": 31228,
                                  "loc": {
                                    "start": {
                                      "line": 730,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 730,
                                      "column": 29
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 31229,
                                  "end": 31237,
                                  "loc": {
                                    "start": {
                                      "line": 730,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 730,
                                      "column": 38
                                    }
                                  },
                                  "value": "center",
                                  "rawValue": "center",
                                  "raw": "'center'"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 31257,
                              "end": 31351,
                              "loc": {
                                "start": {
                                  "line": 731,
                                  "column": 16
                                },
                                "end": {
                                  "line": 731,
                                  "column": 110
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 31257,
                                "end": 31350,
                                "loc": {
                                  "start": {
                                    "line": 731,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 731,
                                    "column": 109
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 31257,
                                  "end": 31273,
                                  "loc": {
                                    "start": {
                                      "line": 731,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 731,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 31257,
                                    "end": 31269,
                                    "loc": {
                                      "start": {
                                        "line": 731,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 731,
                                        "column": 28
                                      }
                                    },
                                    "name": "subStateDiff"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 31270,
                                    "end": 31273,
                                    "loc": {
                                      "start": {
                                        "line": 731,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 731,
                                        "column": 32
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 31274,
                                    "end": 31282,
                                    "loc": {
                                      "start": {
                                        "line": 731,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 731,
                                        "column": 41
                                      }
                                    },
                                    "value": "center",
                                    "rawValue": "center",
                                    "raw": "'center'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 31284,
                                    "end": 31349,
                                    "loc": {
                                      "start": {
                                        "line": 731,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 731,
                                        "column": 108
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 31284,
                                      "end": 31296,
                                      "loc": {
                                        "start": {
                                          "line": 731,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 731,
                                          "column": 55
                                        }
                                      },
                                      "name": "getPointDiff"
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrayExpression",
                                        "start": 31298,
                                        "end": 31348,
                                        "loc": {
                                          "start": {
                                            "line": 731,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 731,
                                            "column": 107
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "CallExpression",
                                            "start": 31299,
                                            "end": 31322,
                                            "loc": {
                                              "start": {
                                                "line": 731,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 731,
                                                "column": 81
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 31299,
                                              "end": 31312,
                                              "loc": {
                                                "start": {
                                                  "line": 731,
                                                  "column": 58
                                                },
                                                "end": {
                                                  "line": 731,
                                                  "column": 71
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 31299,
                                                "end": 31308,
                                                "loc": {
                                                  "start": {
                                                    "line": 731,
                                                    "column": 58
                                                  },
                                                  "end": {
                                                    "line": 731,
                                                    "column": 67
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 31299,
                                                  "end": 31305,
                                                  "loc": {
                                                    "start": {
                                                      "line": 731,
                                                      "column": 58
                                                    },
                                                    "end": {
                                                      "line": 731,
                                                      "column": 64
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 31306,
                                                  "end": 31307,
                                                  "loc": {
                                                    "start": {
                                                      "line": 731,
                                                      "column": 65
                                                    },
                                                    "end": {
                                                      "line": 731,
                                                      "column": 66
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 31309,
                                                "end": 31312,
                                                "loc": {
                                                  "start": {
                                                    "line": 731,
                                                    "column": 68
                                                  },
                                                  "end": {
                                                    "line": 731,
                                                    "column": 71
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 31313,
                                                "end": 31321,
                                                "loc": {
                                                  "start": {
                                                    "line": 731,
                                                    "column": 72
                                                  },
                                                  "end": {
                                                    "line": 731,
                                                    "column": 80
                                                  }
                                                },
                                                "value": "center",
                                                "rawValue": "center",
                                                "raw": "'center'"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "CallExpression",
                                            "start": 31324,
                                            "end": 31347,
                                            "loc": {
                                              "start": {
                                                "line": 731,
                                                "column": 83
                                              },
                                              "end": {
                                                "line": 731,
                                                "column": 106
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 31324,
                                              "end": 31337,
                                              "loc": {
                                                "start": {
                                                  "line": 731,
                                                  "column": 83
                                                },
                                                "end": {
                                                  "line": 731,
                                                  "column": 96
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 31324,
                                                "end": 31333,
                                                "loc": {
                                                  "start": {
                                                    "line": 731,
                                                    "column": 83
                                                  },
                                                  "end": {
                                                    "line": 731,
                                                    "column": 92
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 31324,
                                                  "end": 31330,
                                                  "loc": {
                                                    "start": {
                                                      "line": 731,
                                                      "column": 83
                                                    },
                                                    "end": {
                                                      "line": 731,
                                                      "column": 89
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 31331,
                                                  "end": 31332,
                                                  "loc": {
                                                    "start": {
                                                      "line": 731,
                                                      "column": 90
                                                    },
                                                    "end": {
                                                      "line": 731,
                                                      "column": 91
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 31334,
                                                "end": 31337,
                                                "loc": {
                                                  "start": {
                                                    "line": 731,
                                                    "column": 93
                                                  },
                                                  "end": {
                                                    "line": 731,
                                                    "column": 96
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 31338,
                                                "end": 31346,
                                                "loc": {
                                                  "start": {
                                                    "line": 731,
                                                    "column": 97
                                                  },
                                                  "end": {
                                                    "line": 731,
                                                    "column": 105
                                                  }
                                                },
                                                "value": "center",
                                                "rawValue": "center",
                                                "raw": "'center'"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "IfStatement",
                            "start": 31365,
                            "end": 31472,
                            "loc": {
                              "start": {
                                "line": 732,
                                "column": 12
                              },
                              "end": {
                                "line": 733,
                                "column": 74
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 31369,
                              "end": 31395,
                              "loc": {
                                "start": {
                                  "line": 732,
                                  "column": 16
                                },
                                "end": {
                                  "line": 732,
                                  "column": 42
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 31369,
                                "end": 31382,
                                "loc": {
                                  "start": {
                                    "line": 732,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 732,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 31369,
                                  "end": 31378,
                                  "loc": {
                                    "start": {
                                      "line": 732,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 732,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 31369,
                                    "end": 31375,
                                    "loc": {
                                      "start": {
                                        "line": 732,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 732,
                                        "column": 22
                                      }
                                    },
                                    "name": "states"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 31376,
                                    "end": 31377,
                                    "loc": {
                                      "start": {
                                        "line": 732,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 732,
                                        "column": 24
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 31379,
                                  "end": 31382,
                                  "loc": {
                                    "start": {
                                      "line": 732,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 732,
                                      "column": 29
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 31383,
                                  "end": 31394,
                                  "loc": {
                                    "start": {
                                      "line": 732,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 732,
                                      "column": 41
                                    }
                                  },
                                  "value": "clockwise",
                                  "rawValue": "clockwise",
                                  "raw": "'clockwise'"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 31414,
                              "end": 31472,
                              "loc": {
                                "start": {
                                  "line": 733,
                                  "column": 16
                                },
                                "end": {
                                  "line": 733,
                                  "column": 74
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 31414,
                                "end": 31471,
                                "loc": {
                                  "start": {
                                    "line": 733,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 733,
                                    "column": 73
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 31414,
                                  "end": 31430,
                                  "loc": {
                                    "start": {
                                      "line": 733,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 733,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 31414,
                                    "end": 31426,
                                    "loc": {
                                      "start": {
                                        "line": 733,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 733,
                                        "column": 28
                                      }
                                    },
                                    "name": "subStateDiff"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 31427,
                                    "end": 31430,
                                    "loc": {
                                      "start": {
                                        "line": 733,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 733,
                                        "column": 32
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 31431,
                                    "end": 31442,
                                    "loc": {
                                      "start": {
                                        "line": 733,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 733,
                                        "column": 44
                                      }
                                    },
                                    "value": "clockwise",
                                    "rawValue": "clockwise",
                                    "raw": "'clockwise'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 31444,
                                    "end": 31470,
                                    "loc": {
                                      "start": {
                                        "line": 733,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 733,
                                        "column": 72
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 31444,
                                      "end": 31457,
                                      "loc": {
                                        "start": {
                                          "line": 733,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 733,
                                          "column": 59
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 31444,
                                        "end": 31453,
                                        "loc": {
                                          "start": {
                                            "line": 733,
                                            "column": 46
                                          },
                                          "end": {
                                            "line": 733,
                                            "column": 55
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 31444,
                                          "end": 31450,
                                          "loc": {
                                            "start": {
                                              "line": 733,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 733,
                                              "column": 52
                                            }
                                          },
                                          "name": "states"
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 31451,
                                          "end": 31452,
                                          "loc": {
                                            "start": {
                                              "line": 733,
                                              "column": 53
                                            },
                                            "end": {
                                              "line": 733,
                                              "column": 54
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 31454,
                                        "end": 31457,
                                        "loc": {
                                          "start": {
                                            "line": 733,
                                            "column": 56
                                          },
                                          "end": {
                                            "line": 733,
                                            "column": 59
                                          }
                                        },
                                        "name": "get"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 31458,
                                        "end": 31469,
                                        "loc": {
                                          "start": {
                                            "line": 733,
                                            "column": 60
                                          },
                                          "end": {
                                            "line": 733,
                                            "column": 71
                                          }
                                        },
                                        "value": "clockwise",
                                        "rawValue": "clockwise",
                                        "raw": "'clockwise'"
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 31486,
                            "end": 31522,
                            "loc": {
                              "start": {
                                "line": 734,
                                "column": 12
                              },
                              "end": {
                                "line": 734,
                                "column": 48
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 31486,
                              "end": 31521,
                              "loc": {
                                "start": {
                                  "line": 734,
                                  "column": 12
                                },
                                "end": {
                                  "line": 734,
                                  "column": 47
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 31486,
                                "end": 31499,
                                "loc": {
                                  "start": {
                                    "line": 734,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 734,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 31486,
                                  "end": 31495,
                                  "loc": {
                                    "start": {
                                      "line": 734,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 734,
                                      "column": 21
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 31496,
                                  "end": 31499,
                                  "loc": {
                                    "start": {
                                      "line": 734,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 734,
                                      "column": 25
                                    }
                                  },
                                  "name": "set"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 31500,
                                  "end": 31506,
                                  "loc": {
                                    "start": {
                                      "line": 734,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 734,
                                      "column": 32
                                    }
                                  },
                                  "name": "object"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 31508,
                                  "end": 31520,
                                  "loc": {
                                    "start": {
                                      "line": 734,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 734,
                                      "column": 46
                                    }
                                  },
                                  "name": "subStateDiff"
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 31545,
                      "end": 32085,
                      "loc": {
                        "start": {
                          "line": 737,
                          "column": 8
                        },
                        "end": {
                          "line": 748,
                          "column": 17
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 31545,
                        "end": 32084,
                        "loc": {
                          "start": {
                            "line": 737,
                            "column": 8
                          },
                          "end": {
                            "line": 748,
                            "column": 16
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 31545,
                          "end": 31562,
                          "loc": {
                            "start": {
                              "line": 737,
                              "column": 8
                            },
                            "end": {
                              "line": 737,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 31545,
                            "end": 31554,
                            "loc": {
                              "start": {
                                "line": 737,
                                "column": 8
                              },
                              "end": {
                                "line": 737,
                                "column": 17
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 31545,
                              "end": 31551,
                              "loc": {
                                "start": {
                                  "line": 737,
                                  "column": 8
                                },
                                "end": {
                                  "line": 737,
                                  "column": 14
                                }
                              },
                              "name": "states"
                            },
                            "property": {
                              "type": "Literal",
                              "start": 31552,
                              "end": 31553,
                              "loc": {
                                "start": {
                                  "line": 737,
                                  "column": 15
                                },
                                "end": {
                                  "line": 737,
                                  "column": 16
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "computed": true
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 31555,
                            "end": 31562,
                            "loc": {
                              "start": {
                                "line": 737,
                                "column": 18
                              },
                              "end": {
                                "line": 737,
                                "column": 25
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "FunctionExpression",
                            "start": 31563,
                            "end": 32077,
                            "loc": {
                              "start": {
                                "line": 737,
                                "column": 26
                              },
                              "end": {
                                "line": 748,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 31572,
                                "end": 31580,
                                "loc": {
                                  "start": {
                                    "line": 737,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 737,
                                    "column": 43
                                  }
                                },
                                "name": "subState"
                              },
                              {
                                "type": "Identifier",
                                "start": 31582,
                                "end": 31588,
                                "loc": {
                                  "start": {
                                    "line": 737,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 737,
                                    "column": 51
                                  }
                                },
                                "name": "object"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 31590,
                              "end": 32077,
                              "loc": {
                                "start": {
                                  "line": 737,
                                  "column": 53
                                },
                                "end": {
                                  "line": 748,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 31605,
                                  "end": 31637,
                                  "loc": {
                                    "start": {
                                      "line": 738,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 738,
                                      "column": 44
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 31609,
                                    "end": 31628,
                                    "loc": {
                                      "start": {
                                        "line": 738,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 738,
                                        "column": 35
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 31609,
                                      "end": 31622,
                                      "loc": {
                                        "start": {
                                          "line": 738,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 738,
                                          "column": 29
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 31609,
                                        "end": 31617,
                                        "loc": {
                                          "start": {
                                            "line": 738,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 738,
                                            "column": 24
                                          }
                                        },
                                        "name": "subState"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 31618,
                                        "end": 31622,
                                        "loc": {
                                          "start": {
                                            "line": 738,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 738,
                                            "column": 29
                                          }
                                        },
                                        "name": "size"
                                      },
                                      "computed": false
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "Literal",
                                      "start": 31627,
                                      "end": 31628,
                                      "loc": {
                                        "start": {
                                          "line": 738,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 738,
                                          "column": 35
                                        }
                                      },
                                      "value": 0,
                                      "rawValue": 0,
                                      "raw": "0"
                                    }
                                  },
                                  "consequent": {
                                    "type": "ReturnStatement",
                                    "start": 31630,
                                    "end": 31637,
                                    "loc": {
                                      "start": {
                                        "line": 738,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 738,
                                        "column": 44
                                      }
                                    },
                                    "argument": null
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 31651,
                                  "end": 31692,
                                  "loc": {
                                    "start": {
                                      "line": 739,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 739,
                                      "column": 53
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 31655,
                                      "end": 31691,
                                      "loc": {
                                        "start": {
                                          "line": 739,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 739,
                                          "column": 52
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 31655,
                                        "end": 31667,
                                        "loc": {
                                          "start": {
                                            "line": 739,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 739,
                                            "column": 28
                                          }
                                        },
                                        "name": "nextSubState"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 31670,
                                        "end": 31691,
                                        "loc": {
                                          "start": {
                                            "line": 739,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 739,
                                            "column": 52
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 31670,
                                          "end": 31683,
                                          "loc": {
                                            "start": {
                                              "line": 739,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 739,
                                              "column": 44
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 31670,
                                            "end": 31679,
                                            "loc": {
                                              "start": {
                                                "line": 739,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 739,
                                                "column": 40
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 31670,
                                              "end": 31676,
                                              "loc": {
                                                "start": {
                                                  "line": 739,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 739,
                                                  "column": 37
                                                }
                                              },
                                              "name": "states"
                                            },
                                            "property": {
                                              "type": "Literal",
                                              "start": 31677,
                                              "end": 31678,
                                              "loc": {
                                                "start": {
                                                  "line": 739,
                                                  "column": 38
                                                },
                                                "end": {
                                                  "line": 739,
                                                  "column": 39
                                                }
                                              },
                                              "value": 1,
                                              "rawValue": 1,
                                              "raw": "1"
                                            },
                                            "computed": true
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 31680,
                                            "end": 31683,
                                            "loc": {
                                              "start": {
                                                "line": 739,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 739,
                                                "column": 44
                                              }
                                            },
                                            "name": "get"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 31684,
                                            "end": 31690,
                                            "loc": {
                                              "start": {
                                                "line": 739,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 739,
                                                "column": 51
                                              }
                                            },
                                            "name": "object"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 31708,
                                  "end": 32066,
                                  "loc": {
                                    "start": {
                                      "line": 741,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 747,
                                      "column": 13
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 31712,
                                    "end": 31735,
                                    "loc": {
                                      "start": {
                                        "line": 741,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 741,
                                        "column": 39
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 31712,
                                      "end": 31718,
                                      "loc": {
                                        "start": {
                                          "line": 741,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 741,
                                          "column": 22
                                        }
                                      },
                                      "name": "object"
                                    },
                                    "operator": "instanceof",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 31730,
                                      "end": 31735,
                                      "loc": {
                                        "start": {
                                          "line": 741,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 741,
                                          "column": 39
                                        }
                                      },
                                      "name": "Point"
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 31737,
                                    "end": 31840,
                                    "loc": {
                                      "start": {
                                        "line": 741,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 743,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 31756,
                                        "end": 31825,
                                        "loc": {
                                          "start": {
                                            "line": 742,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 742,
                                            "column": 85
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 31756,
                                          "end": 31824,
                                          "loc": {
                                            "start": {
                                              "line": 742,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 742,
                                              "column": 84
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 31756,
                                            "end": 31768,
                                            "loc": {
                                              "start": {
                                                "line": 742,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 742,
                                                "column": 28
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 31756,
                                              "end": 31764,
                                              "loc": {
                                                "start": {
                                                  "line": 742,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 742,
                                                  "column": 24
                                                }
                                              },
                                              "name": "subState"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 31765,
                                              "end": 31768,
                                              "loc": {
                                                "start": {
                                                  "line": 742,
                                                  "column": 25
                                                },
                                                "end": {
                                                  "line": 742,
                                                  "column": 28
                                                }
                                              },
                                              "name": "set"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 31769,
                                              "end": 31775,
                                              "loc": {
                                                "start": {
                                                  "line": 742,
                                                  "column": 29
                                                },
                                                "end": {
                                                  "line": 742,
                                                  "column": 35
                                                }
                                              },
                                              "name": "object"
                                            },
                                            {
                                              "type": "CallExpression",
                                              "start": 31777,
                                              "end": 31823,
                                              "loc": {
                                                "start": {
                                                  "line": 742,
                                                  "column": 37
                                                },
                                                "end": {
                                                  "line": 742,
                                                  "column": 83
                                                }
                                              },
                                              "callee": {
                                                "type": "Identifier",
                                                "start": 31777,
                                                "end": 31789,
                                                "loc": {
                                                  "start": {
                                                    "line": 742,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 742,
                                                    "column": 49
                                                  }
                                                },
                                                "name": "getPointDiff"
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 31790,
                                                  "end": 31796,
                                                  "loc": {
                                                    "start": {
                                                      "line": 742,
                                                      "column": 50
                                                    },
                                                    "end": {
                                                      "line": 742,
                                                      "column": 56
                                                    }
                                                  },
                                                  "name": "object"
                                                },
                                                {
                                                  "type": "ArrayExpression",
                                                  "start": 31798,
                                                  "end": 31822,
                                                  "loc": {
                                                    "start": {
                                                      "line": 742,
                                                      "column": 58
                                                    },
                                                    "end": {
                                                      "line": 742,
                                                      "column": 82
                                                    }
                                                  },
                                                  "elements": [
                                                    {
                                                      "type": "Identifier",
                                                      "start": 31799,
                                                      "end": 31807,
                                                      "loc": {
                                                        "start": {
                                                          "line": 742,
                                                          "column": 59
                                                        },
                                                        "end": {
                                                          "line": 742,
                                                          "column": 67
                                                        }
                                                      },
                                                      "name": "subState"
                                                    },
                                                    {
                                                      "type": "Identifier",
                                                      "start": 31809,
                                                      "end": 31821,
                                                      "loc": {
                                                        "start": {
                                                          "line": 742,
                                                          "column": 69
                                                        },
                                                        "end": {
                                                          "line": 742,
                                                          "column": 81
                                                        }
                                                      },
                                                      "name": "nextSubState"
                                                    }
                                                  ]
                                                }
                                              ]
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  },
                                  "alternate": {
                                    "type": "IfStatement",
                                    "start": 31846,
                                    "end": 32066,
                                    "loc": {
                                      "start": {
                                        "line": 743,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 747,
                                        "column": 13
                                      }
                                    },
                                    "test": {
                                      "type": "BinaryExpression",
                                      "start": 31850,
                                      "end": 31872,
                                      "loc": {
                                        "start": {
                                          "line": 743,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 743,
                                          "column": 45
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 31850,
                                        "end": 31856,
                                        "loc": {
                                          "start": {
                                            "line": 743,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 743,
                                            "column": 29
                                          }
                                        },
                                        "name": "object"
                                      },
                                      "operator": "instanceof",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 31868,
                                        "end": 31872,
                                        "loc": {
                                          "start": {
                                            "line": 743,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 743,
                                            "column": 45
                                          }
                                        },
                                        "name": "Line"
                                      }
                                    },
                                    "consequent": {
                                      "type": "BlockStatement",
                                      "start": 31874,
                                      "end": 31954,
                                      "loc": {
                                        "start": {
                                          "line": 743,
                                          "column": 47
                                        },
                                        "end": {
                                          "line": 745,
                                          "column": 13
                                        }
                                      },
                                      "body": [
                                        {
                                          "type": "ExpressionStatement",
                                          "start": 31893,
                                          "end": 31939,
                                          "loc": {
                                            "start": {
                                              "line": 744,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 744,
                                              "column": 62
                                            }
                                          },
                                          "expression": {
                                            "type": "CallExpression",
                                            "start": 31893,
                                            "end": 31938,
                                            "loc": {
                                              "start": {
                                                "line": 744,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 744,
                                                "column": 61
                                              }
                                            },
                                            "callee": {
                                              "type": "Identifier",
                                              "start": 31893,
                                              "end": 31904,
                                              "loc": {
                                                "start": {
                                                  "line": 744,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 744,
                                                  "column": 27
                                                }
                                              },
                                              "name": "getLineDiff"
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 31905,
                                                "end": 31911,
                                                "loc": {
                                                  "start": {
                                                    "line": 744,
                                                    "column": 28
                                                  },
                                                  "end": {
                                                    "line": 744,
                                                    "column": 34
                                                  }
                                                },
                                                "name": "object"
                                              },
                                              {
                                                "type": "ArrayExpression",
                                                "start": 31913,
                                                "end": 31937,
                                                "loc": {
                                                  "start": {
                                                    "line": 744,
                                                    "column": 36
                                                  },
                                                  "end": {
                                                    "line": 744,
                                                    "column": 60
                                                  }
                                                },
                                                "elements": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 31914,
                                                    "end": 31922,
                                                    "loc": {
                                                      "start": {
                                                        "line": 744,
                                                        "column": 37
                                                      },
                                                      "end": {
                                                        "line": 744,
                                                        "column": 45
                                                      }
                                                    },
                                                    "name": "subState"
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 31924,
                                                    "end": 31936,
                                                    "loc": {
                                                      "start": {
                                                        "line": 744,
                                                        "column": 47
                                                      },
                                                      "end": {
                                                        "line": 744,
                                                        "column": 59
                                                      }
                                                    },
                                                    "name": "nextSubState"
                                                  }
                                                ]
                                              }
                                            ]
                                          }
                                        }
                                      ]
                                    },
                                    "alternate": {
                                      "type": "IfStatement",
                                      "start": 31960,
                                      "end": 32066,
                                      "loc": {
                                        "start": {
                                          "line": 745,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 747,
                                          "column": 13
                                        }
                                      },
                                      "test": {
                                        "type": "BinaryExpression",
                                        "start": 31964,
                                        "end": 31985,
                                        "loc": {
                                          "start": {
                                            "line": 745,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 745,
                                            "column": 44
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 31964,
                                          "end": 31970,
                                          "loc": {
                                            "start": {
                                              "line": 745,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 745,
                                              "column": 29
                                            }
                                          },
                                          "name": "object"
                                        },
                                        "operator": "instanceof",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 31982,
                                          "end": 31985,
                                          "loc": {
                                            "start": {
                                              "line": 745,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 745,
                                              "column": 44
                                            }
                                          },
                                          "name": "Arc"
                                        }
                                      },
                                      "consequent": {
                                        "type": "BlockStatement",
                                        "start": 31987,
                                        "end": 32066,
                                        "loc": {
                                          "start": {
                                            "line": 745,
                                            "column": 46
                                          },
                                          "end": {
                                            "line": 747,
                                            "column": 13
                                          }
                                        },
                                        "body": [
                                          {
                                            "type": "ExpressionStatement",
                                            "start": 32006,
                                            "end": 32051,
                                            "loc": {
                                              "start": {
                                                "line": 746,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 746,
                                                "column": 61
                                              }
                                            },
                                            "expression": {
                                              "type": "CallExpression",
                                              "start": 32006,
                                              "end": 32050,
                                              "loc": {
                                                "start": {
                                                  "line": 746,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 746,
                                                  "column": 60
                                                }
                                              },
                                              "callee": {
                                                "type": "Identifier",
                                                "start": 32006,
                                                "end": 32016,
                                                "loc": {
                                                  "start": {
                                                    "line": 746,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 746,
                                                    "column": 26
                                                  }
                                                },
                                                "name": "getArcDiff"
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 32017,
                                                  "end": 32023,
                                                  "loc": {
                                                    "start": {
                                                      "line": 746,
                                                      "column": 27
                                                    },
                                                    "end": {
                                                      "line": 746,
                                                      "column": 33
                                                    }
                                                  },
                                                  "name": "object"
                                                },
                                                {
                                                  "type": "ArrayExpression",
                                                  "start": 32025,
                                                  "end": 32049,
                                                  "loc": {
                                                    "start": {
                                                      "line": 746,
                                                      "column": 35
                                                    },
                                                    "end": {
                                                      "line": 746,
                                                      "column": 59
                                                    }
                                                  },
                                                  "elements": [
                                                    {
                                                      "type": "Identifier",
                                                      "start": 32026,
                                                      "end": 32034,
                                                      "loc": {
                                                        "start": {
                                                          "line": 746,
                                                          "column": 36
                                                        },
                                                        "end": {
                                                          "line": 746,
                                                          "column": 44
                                                        }
                                                      },
                                                      "name": "subState"
                                                    },
                                                    {
                                                      "type": "Identifier",
                                                      "start": 32036,
                                                      "end": 32048,
                                                      "loc": {
                                                        "start": {
                                                          "line": 746,
                                                          "column": 46
                                                        },
                                                        "end": {
                                                          "line": 746,
                                                          "column": 58
                                                        }
                                                      },
                                                      "name": "nextSubState"
                                                    }
                                                  ]
                                                }
                                              ]
                                            }
                                          }
                                        ]
                                      },
                                      "alternate": null
                                    }
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "ThisExpression",
                            "start": 32079,
                            "end": 32083,
                            "loc": {
                              "start": {
                                "line": 748,
                                "column": 11
                              },
                              "end": {
                                "line": 748,
                                "column": 15
                              }
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 32097,
                      "end": 32114,
                      "loc": {
                        "start": {
                          "line": 750,
                          "column": 8
                        },
                        "end": {
                          "line": 750,
                          "column": 25
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 32104,
                        "end": 32113,
                        "loc": {
                          "start": {
                            "line": 750,
                            "column": 15
                          },
                          "end": {
                            "line": 750,
                            "column": 24
                          }
                        },
                        "name": "stateDiff"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 32129,
              "end": 32788,
              "loc": {
                "start": {
                  "line": 753,
                  "column": 4
                },
                "end": {
                  "line": 767,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 32129,
                "end": 32143,
                "loc": {
                  "start": {
                    "line": 753,
                    "column": 4
                  },
                  "end": {
                    "line": 753,
                    "column": 18
                  }
                },
                "name": "applyStateDiff"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 32143,
                "end": 32788,
                "loc": {
                  "start": {
                    "line": 753,
                    "column": 18
                  },
                  "end": {
                    "line": 767,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 32144,
                    "end": 32153,
                    "loc": {
                      "start": {
                        "line": 753,
                        "column": 19
                      },
                      "end": {
                        "line": 753,
                        "column": 28
                      }
                    },
                    "name": "stateDiff"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 32155,
                  "end": 32788,
                  "loc": {
                    "start": {
                      "line": 753,
                      "column": 30
                    },
                    "end": {
                      "line": 767,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 32166,
                      "end": 32601,
                      "loc": {
                        "start": {
                          "line": 754,
                          "column": 8
                        },
                        "end": {
                          "line": 763,
                          "column": 17
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 32166,
                        "end": 32600,
                        "loc": {
                          "start": {
                            "line": 754,
                            "column": 8
                          },
                          "end": {
                            "line": 763,
                            "column": 16
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 32166,
                          "end": 32183,
                          "loc": {
                            "start": {
                              "line": 754,
                              "column": 8
                            },
                            "end": {
                              "line": 754,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 32166,
                            "end": 32175,
                            "loc": {
                              "start": {
                                "line": 754,
                                "column": 8
                              },
                              "end": {
                                "line": 754,
                                "column": 17
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 32176,
                            "end": 32183,
                            "loc": {
                              "start": {
                                "line": 754,
                                "column": 18
                              },
                              "end": {
                                "line": 754,
                                "column": 25
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "FunctionExpression",
                            "start": 32184,
                            "end": 32593,
                            "loc": {
                              "start": {
                                "line": 754,
                                "column": 26
                              },
                              "end": {
                                "line": 763,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 32193,
                                "end": 32200,
                                "loc": {
                                  "start": {
                                    "line": 754,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 754,
                                    "column": 42
                                  }
                                },
                                "name": "subDiff"
                              },
                              {
                                "type": "Identifier",
                                "start": 32202,
                                "end": 32208,
                                "loc": {
                                  "start": {
                                    "line": 754,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 754,
                                    "column": 50
                                  }
                                },
                                "name": "object"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 32210,
                              "end": 32593,
                              "loc": {
                                "start": {
                                  "line": 754,
                                  "column": 52
                                },
                                "end": {
                                  "line": 763,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 32225,
                                  "end": 32451,
                                  "loc": {
                                    "start": {
                                      "line": 755,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 759,
                                      "column": 13
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 32229,
                                    "end": 32250,
                                    "loc": {
                                      "start": {
                                        "line": 755,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 755,
                                        "column": 37
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 32229,
                                      "end": 32236,
                                      "loc": {
                                        "start": {
                                          "line": 755,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 755,
                                          "column": 23
                                        }
                                      },
                                      "name": "subDiff"
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 32241,
                                      "end": 32250,
                                      "loc": {
                                        "start": {
                                          "line": 755,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 755,
                                          "column": 37
                                        }
                                      },
                                      "name": "undefined"
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 32252,
                                    "end": 32451,
                                    "loc": {
                                      "start": {
                                        "line": 755,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 759,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "IfStatement",
                                        "start": 32271,
                                        "end": 32363,
                                        "loc": {
                                          "start": {
                                            "line": 756,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 756,
                                            "column": 108
                                          }
                                        },
                                        "test": {
                                          "type": "UnaryExpression",
                                          "start": 32275,
                                          "end": 32299,
                                          "loc": {
                                            "start": {
                                              "line": 756,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 756,
                                              "column": 44
                                            }
                                          },
                                          "operator": "!",
                                          "prefix": true,
                                          "argument": {
                                            "type": "CallExpression",
                                            "start": 32276,
                                            "end": 32299,
                                            "loc": {
                                              "start": {
                                                "line": 756,
                                                "column": 21
                                              },
                                              "end": {
                                                "line": 756,
                                                "column": 44
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 32276,
                                              "end": 32291,
                                              "loc": {
                                                "start": {
                                                  "line": 756,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 756,
                                                  "column": 36
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 32276,
                                                "end": 32280,
                                                "loc": {
                                                  "start": {
                                                    "line": 756,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 756,
                                                    "column": 25
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 32281,
                                                "end": 32291,
                                                "loc": {
                                                  "start": {
                                                    "line": 756,
                                                    "column": 26
                                                  },
                                                  "end": {
                                                    "line": 756,
                                                    "column": 36
                                                  }
                                                },
                                                "name": "isOnSketch"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 32292,
                                                "end": 32298,
                                                "loc": {
                                                  "start": {
                                                    "line": 756,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 756,
                                                    "column": 43
                                                  }
                                                },
                                                "name": "object"
                                              }
                                            ]
                                          }
                                        },
                                        "consequent": {
                                          "type": "ExpressionStatement",
                                          "start": 32301,
                                          "end": 32363,
                                          "loc": {
                                            "start": {
                                              "line": 756,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 756,
                                              "column": 108
                                            }
                                          },
                                          "expression": {
                                            "type": "CallExpression",
                                            "start": 32301,
                                            "end": 32362,
                                            "loc": {
                                              "start": {
                                                "line": 756,
                                                "column": 46
                                              },
                                              "end": {
                                                "line": 756,
                                                "column": 107
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 32301,
                                              "end": 32314,
                                              "loc": {
                                                "start": {
                                                  "line": 756,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 756,
                                                  "column": 59
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 32301,
                                                "end": 32308,
                                                "loc": {
                                                  "start": {
                                                    "line": 756,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 756,
                                                    "column": 53
                                                  }
                                                },
                                                "name": "console"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 32309,
                                                "end": 32314,
                                                "loc": {
                                                  "start": {
                                                    "line": 756,
                                                    "column": 54
                                                  },
                                                  "end": {
                                                    "line": 756,
                                                    "column": 59
                                                  }
                                                },
                                                "name": "error"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 32315,
                                                "end": 32350,
                                                "loc": {
                                                  "start": {
                                                    "line": 756,
                                                    "column": 60
                                                  },
                                                  "end": {
                                                    "line": 756,
                                                    "column": 95
                                                  }
                                                },
                                                "value": "sketch invariant fail: don't have",
                                                "rawValue": "sketch invariant fail: don't have",
                                                "raw": "\"sketch invariant fail: don't have\""
                                              },
                                              {
                                                "type": "MemberExpression",
                                                "start": 32352,
                                                "end": 32361,
                                                "loc": {
                                                  "start": {
                                                    "line": 756,
                                                    "column": 97
                                                  },
                                                  "end": {
                                                    "line": 756,
                                                    "column": 106
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 32352,
                                                  "end": 32358,
                                                  "loc": {
                                                    "start": {
                                                      "line": 756,
                                                      "column": 97
                                                    },
                                                    "end": {
                                                      "line": 756,
                                                      "column": 103
                                                    }
                                                  },
                                                  "name": "object"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 32359,
                                                  "end": 32361,
                                                  "loc": {
                                                    "start": {
                                                      "line": 756,
                                                      "column": 104
                                                    },
                                                    "end": {
                                                      "line": 756,
                                                      "column": 106
                                                    }
                                                  },
                                                  "name": "id"
                                                },
                                                "computed": false
                                              }
                                            ]
                                          }
                                        },
                                        "alternate": null
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 32381,
                                        "end": 32411,
                                        "loc": {
                                          "start": {
                                            "line": 757,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 757,
                                            "column": 46
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 32381,
                                          "end": 32410,
                                          "loc": {
                                            "start": {
                                              "line": 757,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 757,
                                              "column": 45
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 32381,
                                            "end": 32402,
                                            "loc": {
                                              "start": {
                                                "line": 757,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 757,
                                                "column": 37
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 32381,
                                              "end": 32385,
                                              "loc": {
                                                "start": {
                                                  "line": 757,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 757,
                                                  "column": 20
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 32386,
                                              "end": 32402,
                                              "loc": {
                                                "start": {
                                                  "line": 757,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 757,
                                                  "column": 37
                                                }
                                              },
                                              "name": "removeFromSketch"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 32403,
                                              "end": 32409,
                                              "loc": {
                                                "start": {
                                                  "line": 757,
                                                  "column": 38
                                                },
                                                "end": {
                                                  "line": 757,
                                                  "column": 44
                                                }
                                              },
                                              "name": "object"
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        "type": "ReturnStatement",
                                        "start": 32429,
                                        "end": 32436,
                                        "loc": {
                                          "start": {
                                            "line": 758,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 758,
                                            "column": 23
                                          }
                                        },
                                        "argument": null
                                      }
                                    ]
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 32465,
                                  "end": 32537,
                                  "loc": {
                                    "start": {
                                      "line": 760,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 761,
                                      "column": 41
                                    }
                                  },
                                  "test": {
                                    "type": "UnaryExpression",
                                    "start": 32469,
                                    "end": 32493,
                                    "loc": {
                                      "start": {
                                        "line": 760,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 760,
                                        "column": 40
                                      }
                                    },
                                    "operator": "!",
                                    "prefix": true,
                                    "argument": {
                                      "type": "CallExpression",
                                      "start": 32470,
                                      "end": 32493,
                                      "loc": {
                                        "start": {
                                          "line": 760,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 760,
                                          "column": 40
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 32470,
                                        "end": 32485,
                                        "loc": {
                                          "start": {
                                            "line": 760,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 760,
                                            "column": 32
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 32470,
                                          "end": 32474,
                                          "loc": {
                                            "start": {
                                              "line": 760,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 760,
                                              "column": 21
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 32475,
                                          "end": 32485,
                                          "loc": {
                                            "start": {
                                              "line": 760,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 760,
                                              "column": 32
                                            }
                                          },
                                          "name": "isOnSketch"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 32486,
                                          "end": 32492,
                                          "loc": {
                                            "start": {
                                              "line": 760,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 760,
                                              "column": 39
                                            }
                                          },
                                          "name": "object"
                                        }
                                      ]
                                    }
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 32512,
                                    "end": 32537,
                                    "loc": {
                                      "start": {
                                        "line": 761,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 761,
                                        "column": 41
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 32512,
                                      "end": 32536,
                                      "loc": {
                                        "start": {
                                          "line": 761,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 761,
                                          "column": 40
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 32512,
                                        "end": 32528,
                                        "loc": {
                                          "start": {
                                            "line": 761,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 761,
                                            "column": 32
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 32512,
                                          "end": 32516,
                                          "loc": {
                                            "start": {
                                              "line": 761,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 761,
                                              "column": 20
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 32517,
                                          "end": 32528,
                                          "loc": {
                                            "start": {
                                              "line": 761,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 761,
                                              "column": 32
                                            }
                                          },
                                          "name": "addToSketch"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 32529,
                                          "end": 32535,
                                          "loc": {
                                            "start": {
                                              "line": 761,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 761,
                                              "column": 39
                                            }
                                          },
                                          "name": "object"
                                        }
                                      ]
                                    }
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 32551,
                                  "end": 32582,
                                  "loc": {
                                    "start": {
                                      "line": 762,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 762,
                                      "column": 43
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 32551,
                                    "end": 32581,
                                    "loc": {
                                      "start": {
                                        "line": 762,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 762,
                                        "column": 42
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 32551,
                                      "end": 32572,
                                      "loc": {
                                        "start": {
                                          "line": 762,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 762,
                                          "column": 33
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 32551,
                                        "end": 32557,
                                        "loc": {
                                          "start": {
                                            "line": 762,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 762,
                                            "column": 18
                                          }
                                        },
                                        "name": "object"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 32558,
                                        "end": 32572,
                                        "loc": {
                                          "start": {
                                            "line": 762,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 762,
                                            "column": 33
                                          }
                                        },
                                        "name": "applyStateDiff"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 32573,
                                        "end": 32580,
                                        "loc": {
                                          "start": {
                                            "line": 762,
                                            "column": 34
                                          },
                                          "end": {
                                            "line": 762,
                                            "column": 41
                                          }
                                        },
                                        "name": "subDiff"
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "ThisExpression",
                            "start": 32595,
                            "end": 32599,
                            "loc": {
                              "start": {
                                "line": 763,
                                "column": 11
                              },
                              "end": {
                                "line": 763,
                                "column": 15
                              }
                            }
                          }
                        ]
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " geometry of any object (even not in stateDiff) could have been invalidated",
                          "start": 32611,
                          "end": 32688,
                          "loc": {
                            "start": {
                              "line": 764,
                              "column": 8
                            },
                            "end": {
                              "line": 764,
                              "column": 85
                            }
                          },
                          "range": [
                            32611,
                            32688
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ForOfStatement",
                      "start": 32698,
                      "end": 32781,
                      "loc": {
                        "start": {
                          "line": 765,
                          "column": 8
                        },
                        "end": {
                          "line": 766,
                          "column": 36
                        }
                      },
                      "left": {
                        "type": "VariableDeclaration",
                        "start": 32703,
                        "end": 32713,
                        "loc": {
                          "start": {
                            "line": 765,
                            "column": 13
                          },
                          "end": {
                            "line": 765,
                            "column": 23
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 32707,
                            "end": 32713,
                            "loc": {
                              "start": {
                                "line": 765,
                                "column": 17
                              },
                              "end": {
                                "line": 765,
                                "column": 23
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 32707,
                              "end": 32713,
                              "loc": {
                                "start": {
                                  "line": 765,
                                  "column": 17
                                },
                                "end": {
                                  "line": 765,
                                  "column": 23
                                }
                              },
                              "name": "object",
                              "leadingComments": null
                            },
                            "init": null,
                            "leadingComments": null
                          }
                        ],
                        "kind": "var",
                        "leadingComments": null
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 32717,
                        "end": 32742,
                        "loc": {
                          "start": {
                            "line": 765,
                            "column": 27
                          },
                          "end": {
                            "line": 765,
                            "column": 52
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 32717,
                          "end": 32740,
                          "loc": {
                            "start": {
                              "line": 765,
                              "column": 27
                            },
                            "end": {
                              "line": 765,
                              "column": 50
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 32717,
                            "end": 32721,
                            "loc": {
                              "start": {
                                "line": 765,
                                "column": 27
                              },
                              "end": {
                                "line": 765,
                                "column": 31
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 32722,
                            "end": 32740,
                            "loc": {
                              "start": {
                                "line": 765,
                                "column": 32
                              },
                              "end": {
                                "line": 765,
                                "column": 50
                              }
                            },
                            "name": "getObjectsOnSketch"
                          },
                          "computed": false
                        },
                        "arguments": []
                      },
                      "body": {
                        "type": "ExpressionStatement",
                        "start": 32757,
                        "end": 32781,
                        "loc": {
                          "start": {
                            "line": 766,
                            "column": 12
                          },
                          "end": {
                            "line": 766,
                            "column": 36
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 32757,
                          "end": 32780,
                          "loc": {
                            "start": {
                              "line": 766,
                              "column": 12
                            },
                            "end": {
                              "line": 766,
                              "column": 35
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 32757,
                            "end": 32778,
                            "loc": {
                              "start": {
                                "line": 766,
                                "column": 12
                              },
                              "end": {
                                "line": 766,
                                "column": 33
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 32757,
                              "end": 32763,
                              "loc": {
                                "start": {
                                  "line": 766,
                                  "column": 12
                                },
                                "end": {
                                  "line": 766,
                                  "column": 18
                                }
                              },
                              "name": "object"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 32764,
                              "end": 32778,
                              "loc": {
                                "start": {
                                  "line": 766,
                                  "column": 19
                                },
                                "end": {
                                  "line": 766,
                                  "column": 33
                                }
                              },
                              "name": "updateGeometry"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " geometry of any object (even not in stateDiff) could have been invalidated",
                          "start": 32611,
                          "end": 32688,
                          "loc": {
                            "start": {
                              "line": 764,
                              "column": 8
                            },
                            "end": {
                              "line": 764,
                              "column": 85
                            }
                          },
                          "range": [
                            32611,
                            32688
                          ]
                        }
                      ]
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 32796,
              "end": 33244,
              "loc": {
                "start": {
                  "line": 769,
                  "column": 4
                },
                "end": {
                  "line": 779,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 32796,
                "end": 32808,
                "loc": {
                  "start": {
                    "line": 769,
                    "column": 4
                  },
                  "end": {
                    "line": 769,
                    "column": 16
                  }
                },
                "name": "addStateDiff"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 32808,
                "end": 33244,
                "loc": {
                  "start": {
                    "line": 769,
                    "column": 16
                  },
                  "end": {
                    "line": 779,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 32809,
                    "end": 32818,
                    "loc": {
                      "start": {
                        "line": 769,
                        "column": 17
                      },
                      "end": {
                        "line": 769,
                        "column": 26
                      }
                    },
                    "name": "stateDiff"
                  },
                  {
                    "type": "Identifier",
                    "start": 32820,
                    "end": 32825,
                    "loc": {
                      "start": {
                        "line": 769,
                        "column": 28
                      },
                      "end": {
                        "line": 769,
                        "column": 33
                      }
                    },
                    "name": "alpha"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 32827,
                  "end": 33244,
                  "loc": {
                    "start": {
                      "line": 769,
                      "column": 35
                    },
                    "end": {
                      "line": 779,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 32838,
                      "end": 33057,
                      "loc": {
                        "start": {
                          "line": 770,
                          "column": 8
                        },
                        "end": {
                          "line": 775,
                          "column": 17
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 32838,
                        "end": 33056,
                        "loc": {
                          "start": {
                            "line": 770,
                            "column": 8
                          },
                          "end": {
                            "line": 775,
                            "column": 16
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 32838,
                          "end": 32855,
                          "loc": {
                            "start": {
                              "line": 770,
                              "column": 8
                            },
                            "end": {
                              "line": 770,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 32838,
                            "end": 32847,
                            "loc": {
                              "start": {
                                "line": 770,
                                "column": 8
                              },
                              "end": {
                                "line": 770,
                                "column": 17
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 32848,
                            "end": 32855,
                            "loc": {
                              "start": {
                                "line": 770,
                                "column": 18
                              },
                              "end": {
                                "line": 770,
                                "column": 25
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "FunctionExpression",
                            "start": 32856,
                            "end": 33049,
                            "loc": {
                              "start": {
                                "line": 770,
                                "column": 26
                              },
                              "end": {
                                "line": 775,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 32865,
                                "end": 32872,
                                "loc": {
                                  "start": {
                                    "line": 770,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 770,
                                    "column": 42
                                  }
                                },
                                "name": "subDiff"
                              },
                              {
                                "type": "Identifier",
                                "start": 32874,
                                "end": 32880,
                                "loc": {
                                  "start": {
                                    "line": 770,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 770,
                                    "column": 50
                                  }
                                },
                                "name": "object"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 32882,
                              "end": 33049,
                              "loc": {
                                "start": {
                                  "line": 770,
                                  "column": 52
                                },
                                "end": {
                                  "line": 775,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 32897,
                                  "end": 32988,
                                  "loc": {
                                    "start": {
                                      "line": 771,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 773,
                                      "column": 13
                                    }
                                  },
                                  "test": {
                                    "type": "LogicalExpression",
                                    "start": 32901,
                                    "end": 32945,
                                    "loc": {
                                      "start": {
                                        "line": 771,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 771,
                                        "column": 60
                                      }
                                    },
                                    "left": {
                                      "type": "BinaryExpression",
                                      "start": 32901,
                                      "end": 32917,
                                      "loc": {
                                        "start": {
                                          "line": 771,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 771,
                                          "column": 32
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 32901,
                                        "end": 32908,
                                        "loc": {
                                          "start": {
                                            "line": 771,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 771,
                                            "column": 23
                                          }
                                        },
                                        "name": "subDiff"
                                      },
                                      "operator": "===",
                                      "right": {
                                        "type": "Literal",
                                        "start": 32913,
                                        "end": 32917,
                                        "loc": {
                                          "start": {
                                            "line": 771,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 771,
                                            "column": 32
                                          }
                                        },
                                        "value": null,
                                        "rawValue": null,
                                        "raw": "null"
                                      }
                                    },
                                    "operator": "||",
                                    "right": {
                                      "type": "UnaryExpression",
                                      "start": 32921,
                                      "end": 32945,
                                      "loc": {
                                        "start": {
                                          "line": 771,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 771,
                                          "column": 60
                                        }
                                      },
                                      "operator": "!",
                                      "prefix": true,
                                      "argument": {
                                        "type": "CallExpression",
                                        "start": 32922,
                                        "end": 32945,
                                        "loc": {
                                          "start": {
                                            "line": 771,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 771,
                                            "column": 60
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 32922,
                                          "end": 32937,
                                          "loc": {
                                            "start": {
                                              "line": 771,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 771,
                                              "column": 52
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 32922,
                                            "end": 32926,
                                            "loc": {
                                              "start": {
                                                "line": 771,
                                                "column": 37
                                              },
                                              "end": {
                                                "line": 771,
                                                "column": 41
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 32927,
                                            "end": 32937,
                                            "loc": {
                                              "start": {
                                                "line": 771,
                                                "column": 42
                                              },
                                              "end": {
                                                "line": 771,
                                                "column": 52
                                              }
                                            },
                                            "name": "isOnSketch"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 32938,
                                            "end": 32944,
                                            "loc": {
                                              "start": {
                                                "line": 771,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 771,
                                                "column": 59
                                              }
                                            },
                                            "name": "object"
                                          }
                                        ]
                                      }
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 32947,
                                    "end": 32988,
                                    "loc": {
                                      "start": {
                                        "line": 771,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 773,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ReturnStatement",
                                        "start": 32966,
                                        "end": 32973,
                                        "loc": {
                                          "start": {
                                            "line": 772,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 772,
                                            "column": 23
                                          }
                                        },
                                        "argument": null
                                      }
                                    ]
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 33002,
                                  "end": 33038,
                                  "loc": {
                                    "start": {
                                      "line": 774,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 774,
                                      "column": 48
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 33002,
                                    "end": 33037,
                                    "loc": {
                                      "start": {
                                        "line": 774,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 774,
                                        "column": 47
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 33002,
                                      "end": 33021,
                                      "loc": {
                                        "start": {
                                          "line": 774,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 774,
                                          "column": 31
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 33002,
                                        "end": 33008,
                                        "loc": {
                                          "start": {
                                            "line": 774,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 774,
                                            "column": 18
                                          }
                                        },
                                        "name": "object"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 33009,
                                        "end": 33021,
                                        "loc": {
                                          "start": {
                                            "line": 774,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 774,
                                            "column": 31
                                          }
                                        },
                                        "name": "addStateDiff"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 33022,
                                        "end": 33029,
                                        "loc": {
                                          "start": {
                                            "line": 774,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 774,
                                            "column": 39
                                          }
                                        },
                                        "name": "subDiff"
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 33031,
                                        "end": 33036,
                                        "loc": {
                                          "start": {
                                            "line": 774,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 774,
                                            "column": 46
                                          }
                                        },
                                        "name": "alpha"
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "ThisExpression",
                            "start": 33051,
                            "end": 33055,
                            "loc": {
                              "start": {
                                "line": 775,
                                "column": 11
                              },
                              "end": {
                                "line": 775,
                                "column": 15
                              }
                            }
                          }
                        ]
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " geometry of any object (even not in stateDiff) could have been invalidated",
                          "start": 33067,
                          "end": 33144,
                          "loc": {
                            "start": {
                              "line": 776,
                              "column": 8
                            },
                            "end": {
                              "line": 776,
                              "column": 85
                            }
                          },
                          "range": [
                            33067,
                            33144
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ForOfStatement",
                      "start": 33154,
                      "end": 33237,
                      "loc": {
                        "start": {
                          "line": 777,
                          "column": 8
                        },
                        "end": {
                          "line": 778,
                          "column": 36
                        }
                      },
                      "left": {
                        "type": "VariableDeclaration",
                        "start": 33159,
                        "end": 33169,
                        "loc": {
                          "start": {
                            "line": 777,
                            "column": 13
                          },
                          "end": {
                            "line": 777,
                            "column": 23
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 33163,
                            "end": 33169,
                            "loc": {
                              "start": {
                                "line": 777,
                                "column": 17
                              },
                              "end": {
                                "line": 777,
                                "column": 23
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 33163,
                              "end": 33169,
                              "loc": {
                                "start": {
                                  "line": 777,
                                  "column": 17
                                },
                                "end": {
                                  "line": 777,
                                  "column": 23
                                }
                              },
                              "name": "object",
                              "leadingComments": null
                            },
                            "init": null,
                            "leadingComments": null
                          }
                        ],
                        "kind": "var",
                        "leadingComments": null
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 33173,
                        "end": 33198,
                        "loc": {
                          "start": {
                            "line": 777,
                            "column": 27
                          },
                          "end": {
                            "line": 777,
                            "column": 52
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 33173,
                          "end": 33196,
                          "loc": {
                            "start": {
                              "line": 777,
                              "column": 27
                            },
                            "end": {
                              "line": 777,
                              "column": 50
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 33173,
                            "end": 33177,
                            "loc": {
                              "start": {
                                "line": 777,
                                "column": 27
                              },
                              "end": {
                                "line": 777,
                                "column": 31
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 33178,
                            "end": 33196,
                            "loc": {
                              "start": {
                                "line": 777,
                                "column": 32
                              },
                              "end": {
                                "line": 777,
                                "column": 50
                              }
                            },
                            "name": "getObjectsOnSketch"
                          },
                          "computed": false
                        },
                        "arguments": []
                      },
                      "body": {
                        "type": "ExpressionStatement",
                        "start": 33213,
                        "end": 33237,
                        "loc": {
                          "start": {
                            "line": 778,
                            "column": 12
                          },
                          "end": {
                            "line": 778,
                            "column": 36
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 33213,
                          "end": 33236,
                          "loc": {
                            "start": {
                              "line": 778,
                              "column": 12
                            },
                            "end": {
                              "line": 778,
                              "column": 35
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 33213,
                            "end": 33234,
                            "loc": {
                              "start": {
                                "line": 778,
                                "column": 12
                              },
                              "end": {
                                "line": 778,
                                "column": 33
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 33213,
                              "end": 33219,
                              "loc": {
                                "start": {
                                  "line": 778,
                                  "column": 12
                                },
                                "end": {
                                  "line": 778,
                                  "column": 18
                                }
                              },
                              "name": "object"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 33220,
                              "end": 33234,
                              "loc": {
                                "start": {
                                  "line": 778,
                                  "column": 19
                                },
                                "end": {
                                  "line": 778,
                                  "column": 33
                                }
                              },
                              "name": "updateGeometry"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " geometry of any object (even not in stateDiff) could have been invalidated",
                          "start": 33067,
                          "end": 33144,
                          "loc": {
                            "start": {
                              "line": 776,
                              "column": 8
                            },
                            "end": {
                              "line": 776,
                              "column": 85
                            }
                          },
                          "range": [
                            33067,
                            33144
                          ]
                        }
                      ]
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 33252,
              "end": 33453,
              "loc": {
                "start": {
                  "line": 781,
                  "column": 4
                },
                "end": {
                  "line": 787,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 33252,
                "end": 33268,
                "loc": {
                  "start": {
                    "line": 781,
                    "column": 4
                  },
                  "end": {
                    "line": 781,
                    "column": 20
                  }
                },
                "name": "finishedUpdating"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 33268,
                "end": 33453,
                "loc": {
                  "start": {
                    "line": 781,
                    "column": 20
                  },
                  "end": {
                    "line": 787,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 33271,
                  "end": 33453,
                  "loc": {
                    "start": {
                      "line": 781,
                      "column": 23
                    },
                    "end": {
                      "line": 787,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 33282,
                      "end": 33421,
                      "loc": {
                        "start": {
                          "line": 782,
                          "column": 8
                        },
                        "end": {
                          "line": 785,
                          "column": 29
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 33286,
                        "end": 33322,
                        "loc": {
                          "start": {
                            "line": 782,
                            "column": 12
                          },
                          "end": {
                            "line": 782,
                            "column": 48
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 33286,
                          "end": 33313,
                          "loc": {
                            "start": {
                              "line": 782,
                              "column": 12
                            },
                            "end": {
                              "line": 782,
                              "column": 39
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 33286,
                            "end": 33299,
                            "loc": {
                              "start": {
                                "line": 782,
                                "column": 12
                              },
                              "end": {
                                "line": 782,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 33286,
                              "end": 33290,
                              "loc": {
                                "start": {
                                  "line": 782,
                                  "column": 12
                                },
                                "end": {
                                  "line": 782,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 33291,
                              "end": 33299,
                              "loc": {
                                "start": {
                                  "line": 782,
                                  "column": 17
                                },
                                "end": {
                                  "line": 782,
                                  "column": 25
                                }
                              },
                              "name": "sketcher"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 33300,
                            "end": 33313,
                            "loc": {
                              "start": {
                                "line": 782,
                                "column": 26
                              },
                              "end": {
                                "line": 782,
                                "column": 39
                              }
                            },
                            "name": "currentSketch"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "ThisExpression",
                          "start": 33318,
                          "end": 33322,
                          "loc": {
                            "start": {
                              "line": 782,
                              "column": 44
                            },
                            "end": {
                              "line": 782,
                              "column": 48
                            }
                          }
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 33357,
                        "end": 33376,
                        "loc": {
                          "start": {
                            "line": 783,
                            "column": 12
                          },
                          "end": {
                            "line": 783,
                            "column": 31
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 33357,
                          "end": 33375,
                          "loc": {
                            "start": {
                              "line": 783,
                              "column": 12
                            },
                            "end": {
                              "line": 783,
                              "column": 30
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 33357,
                            "end": 33373,
                            "loc": {
                              "start": {
                                "line": 783,
                                "column": 12
                              },
                              "end": {
                                "line": 783,
                                "column": 28
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 33357,
                              "end": 33361,
                              "loc": {
                                "start": {
                                  "line": 783,
                                  "column": 12
                                },
                                "end": {
                                  "line": 783,
                                  "column": 16
                                }
                              },
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 33362,
                              "end": 33373,
                              "loc": {
                                "start": {
                                  "line": 783,
                                  "column": 17
                                },
                                "end": {
                                  "line": 783,
                                  "column": 28
                                }
                              },
                              "name": "infiniteBox"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "arguments": [],
                          "leadingComments": null
                        },
                        "leadingComments": [
                          {
                            "type": "CommentLine",
                            "value": " FIXME less hacky",
                            "start": 33324,
                            "end": 33343,
                            "loc": {
                              "start": {
                                "line": 782,
                                "column": 50
                              },
                              "end": {
                                "line": 782,
                                "column": 69
                              }
                            },
                            "range": [
                              33324,
                              33343
                            ]
                          }
                        ]
                      },
                      "alternate": {
                        "type": "ExpressionStatement",
                        "start": 33404,
                        "end": 33421,
                        "loc": {
                          "start": {
                            "line": 785,
                            "column": 12
                          },
                          "end": {
                            "line": 785,
                            "column": 29
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 33404,
                          "end": 33420,
                          "loc": {
                            "start": {
                              "line": 785,
                              "column": 12
                            },
                            "end": {
                              "line": 785,
                              "column": 28
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 33404,
                            "end": 33418,
                            "loc": {
                              "start": {
                                "line": 785,
                                "column": 12
                              },
                              "end": {
                                "line": 785,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 33404,
                              "end": 33408,
                              "loc": {
                                "start": {
                                  "line": 785,
                                  "column": 12
                                },
                                "end": {
                                  "line": 785,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 33409,
                              "end": 33418,
                              "loc": {
                                "start": {
                                  "line": 785,
                                  "column": 17
                                },
                                "end": {
                                  "line": 785,
                                  "column": 26
                                }
                              },
                              "name": "updateBox"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 33431,
                      "end": 33446,
                      "loc": {
                        "start": {
                          "line": 786,
                          "column": 8
                        },
                        "end": {
                          "line": 786,
                          "column": 23
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 33431,
                        "end": 33445,
                        "loc": {
                          "start": {
                            "line": 786,
                            "column": 8
                          },
                          "end": {
                            "line": 786,
                            "column": 22
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 33431,
                          "end": 33443,
                          "loc": {
                            "start": {
                              "line": 786,
                              "column": 8
                            },
                            "end": {
                              "line": 786,
                              "column": 20
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 33431,
                            "end": 33435,
                            "loc": {
                              "start": {
                                "line": 786,
                                "column": 8
                              },
                              "end": {
                                "line": 786,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 33436,
                            "end": 33443,
                            "loc": {
                              "start": {
                                "line": 786,
                                "column": 13
                              },
                              "end": {
                                "line": 786,
                                "column": 20
                              }
                            },
                            "name": "showBox"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 33461,
              "end": 33590,
              "loc": {
                "start": {
                  "line": 789,
                  "column": 4
                },
                "end": {
                  "line": 792,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 33461,
                "end": 33477,
                "loc": {
                  "start": {
                    "line": 789,
                    "column": 4
                  },
                  "end": {
                    "line": 789,
                    "column": 20
                  }
                },
                "name": "updateFromServer"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 33477,
                "end": 33590,
                "loc": {
                  "start": {
                    "line": 789,
                    "column": 20
                  },
                  "end": {
                    "line": 792,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 33480,
                  "end": 33590,
                  "loc": {
                    "start": {
                      "line": 789,
                      "column": 23
                    },
                    "end": {
                      "line": 792,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 33491,
                      "end": 33519,
                      "loc": {
                        "start": {
                          "line": 790,
                          "column": 8
                        },
                        "end": {
                          "line": 790,
                          "column": 36
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 33497,
                          "end": 33518,
                          "loc": {
                            "start": {
                              "line": 790,
                              "column": 14
                            },
                            "end": {
                              "line": 790,
                              "column": 35
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 33497,
                            "end": 33501,
                            "loc": {
                              "start": {
                                "line": 790,
                                "column": 14
                              },
                              "end": {
                                "line": 790,
                                "column": 18
                              }
                            },
                            "name": "part"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 33504,
                            "end": 33518,
                            "loc": {
                              "start": {
                                "line": 790,
                                "column": 21
                              },
                              "end": {
                                "line": 790,
                                "column": 35
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 33504,
                              "end": 33516,
                              "loc": {
                                "start": {
                                  "line": 790,
                                  "column": 21
                                },
                                "end": {
                                  "line": 790,
                                  "column": 33
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 33504,
                                "end": 33508,
                                "loc": {
                                  "start": {
                                    "line": 790,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 790,
                                    "column": 25
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 33509,
                                "end": 33516,
                                "loc": {
                                  "start": {
                                    "line": 790,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 790,
                                    "column": 33
                                  }
                                },
                                "name": "getPart"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "const"
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 33529,
                      "end": 33583,
                      "loc": {
                        "start": {
                          "line": 791,
                          "column": 8
                        },
                        "end": {
                          "line": 791,
                          "column": 62
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 33536,
                        "end": 33582,
                        "loc": {
                          "start": {
                            "line": 791,
                            "column": 15
                          },
                          "end": {
                            "line": 791,
                            "column": 61
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 33536,
                          "end": 33567,
                          "loc": {
                            "start": {
                              "line": 791,
                              "column": 15
                            },
                            "end": {
                              "line": 791,
                              "column": 46
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 33536,
                            "end": 33562,
                            "loc": {
                              "start": {
                                "line": 791,
                                "column": 15
                              },
                              "end": {
                                "line": 791,
                                "column": 41
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 33536,
                              "end": 33556,
                              "loc": {
                                "start": {
                                  "line": 791,
                                  "column": 15
                                },
                                "end": {
                                  "line": 791,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 33536,
                                "end": 33545,
                                "loc": {
                                  "start": {
                                    "line": 791,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 791,
                                    "column": 24
                                  }
                                },
                                "name": "Statement"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 33546,
                                "end": 33556,
                                "loc": {
                                  "start": {
                                    "line": 791,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 791,
                                    "column": 35
                                  }
                                },
                                "name": "JSONExport"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 33557,
                                "end": 33561,
                                "loc": {
                                  "start": {
                                    "line": 791,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 791,
                                    "column": 40
                                  }
                                },
                                "name": "part"
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 33563,
                            "end": 33567,
                            "loc": {
                              "start": {
                                "line": 791,
                                "column": 42
                              },
                              "end": {
                                "line": 791,
                                "column": 46
                              }
                            },
                            "name": "then"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 33568,
                            "end": 33581,
                            "loc": {
                              "start": {
                                "line": 791,
                                "column": 47
                              },
                              "end": {
                                "line": 791,
                                "column": 60
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 33568,
                              "end": 33575,
                              "loc": {
                                "start": {
                                  "line": 791,
                                  "column": 47
                                },
                                "end": {
                                  "line": 791,
                                  "column": 54
                                }
                              },
                              "name": "parseTo"
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 33576,
                                "end": 33580,
                                "loc": {
                                  "start": {
                                    "line": 791,
                                    "column": 55
                                  },
                                  "end": {
                                    "line": 791,
                                    "column": 59
                                  }
                                },
                                "name": "part"
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 33598,
              "end": 33961,
              "loc": {
                "start": {
                  "line": 794,
                  "column": 4
                },
                "end": {
                  "line": 801,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 33604,
                "end": 33620,
                "loc": {
                  "start": {
                    "line": 794,
                    "column": 10
                  },
                  "end": {
                    "line": 794,
                    "column": 26
                  }
                },
                "name": "solveConstraints"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 33620,
                "end": 33961,
                "loc": {
                  "start": {
                    "line": 794,
                    "column": 26
                  },
                  "end": {
                    "line": 801,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 33623,
                  "end": 33961,
                  "loc": {
                    "start": {
                      "line": 794,
                      "column": 29
                    },
                    "end": {
                      "line": 801,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 33708,
                      "end": 33865,
                      "loc": {
                        "start": {
                          "line": 796,
                          "column": 8
                        },
                        "end": {
                          "line": 798,
                          "column": 40
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 33714,
                          "end": 33864,
                          "loc": {
                            "start": {
                              "line": 796,
                              "column": 14
                            },
                            "end": {
                              "line": 798,
                              "column": 39
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 33714,
                            "end": 33721,
                            "loc": {
                              "start": {
                                "line": 796,
                                "column": 14
                              },
                              "end": {
                                "line": 796,
                                "column": 21
                              }
                            },
                            "name": "results",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "AwaitExpression",
                            "start": 33724,
                            "end": 33864,
                            "loc": {
                              "start": {
                                "line": 796,
                                "column": 24
                              },
                              "end": {
                                "line": 798,
                                "column": 39
                              }
                            },
                            "all": false,
                            "argument": {
                              "type": "CallExpression",
                              "start": 33730,
                              "end": 33864,
                              "loc": {
                                "start": {
                                  "line": 796,
                                  "column": 30
                                },
                                "end": {
                                  "line": 798,
                                  "column": 39
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 33730,
                                "end": 33842,
                                "loc": {
                                  "start": {
                                    "line": 796,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 798,
                                    "column": 17
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 33730,
                                  "end": 33834,
                                  "loc": {
                                    "start": {
                                      "line": 796,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 798,
                                      "column": 9
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 33730,
                                    "end": 33785,
                                    "loc": {
                                      "start": {
                                        "line": 796,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 796,
                                        "column": 85
                                      }
                                    },
                                    "object": {
                                      "type": "CallExpression",
                                      "start": 33730,
                                      "end": 33781,
                                      "loc": {
                                        "start": {
                                          "line": 796,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 796,
                                          "column": 81
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 33730,
                                        "end": 33746,
                                        "loc": {
                                          "start": {
                                            "line": 796,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 796,
                                            "column": 46
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 33730,
                                          "end": 33739,
                                          "loc": {
                                            "start": {
                                              "line": 796,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 796,
                                              "column": 39
                                            }
                                          },
                                          "name": "Statement"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 33740,
                                          "end": 33746,
                                          "loc": {
                                            "start": {
                                              "line": 796,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 796,
                                              "column": 46
                                            }
                                          },
                                          "name": "Return"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "CallExpression",
                                          "start": 33747,
                                          "end": 33780,
                                          "loc": {
                                            "start": {
                                              "line": 796,
                                              "column": 47
                                            },
                                            "end": {
                                              "line": 796,
                                              "column": 80
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 33747,
                                            "end": 33774,
                                            "loc": {
                                              "start": {
                                                "line": 796,
                                                "column": 47
                                              },
                                              "end": {
                                                "line": 796,
                                                "column": 74
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 33747,
                                              "end": 33757,
                                              "loc": {
                                                "start": {
                                                  "line": 796,
                                                  "column": 47
                                                },
                                                "end": {
                                                  "line": 796,
                                                  "column": 57
                                                }
                                              },
                                              "name": "Expression"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 33758,
                                              "end": 33774,
                                              "loc": {
                                                "start": {
                                                  "line": 796,
                                                  "column": 58
                                                },
                                                "end": {
                                                  "line": 796,
                                                  "column": 74
                                                }
                                              },
                                              "name": "SolveConstraints"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "ThisExpression",
                                              "start": 33775,
                                              "end": 33779,
                                              "loc": {
                                                "start": {
                                                  "line": 796,
                                                  "column": 75
                                                },
                                                "end": {
                                                  "line": 796,
                                                  "column": 79
                                                }
                                              }
                                            }
                                          ]
                                        }
                                      ]
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 33782,
                                      "end": 33785,
                                      "loc": {
                                        "start": {
                                          "line": 796,
                                          "column": 82
                                        },
                                        "end": {
                                          "line": 796,
                                          "column": 85
                                        }
                                      },
                                      "name": "and"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "CallExpression",
                                      "start": 33800,
                                      "end": 33823,
                                      "loc": {
                                        "start": {
                                          "line": 797,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 797,
                                          "column": 35
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 33800,
                                        "end": 33821,
                                        "loc": {
                                          "start": {
                                            "line": 797,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 797,
                                            "column": 33
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 33800,
                                          "end": 33804,
                                          "loc": {
                                            "start": {
                                              "line": 797,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 797,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 33805,
                                          "end": 33821,
                                          "loc": {
                                            "start": {
                                              "line": 797,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 797,
                                              "column": 33
                                            }
                                          },
                                          "name": "updateFromServer"
                                        },
                                        "computed": false
                                      },
                                      "arguments": []
                                    }
                                  ]
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 33835,
                                  "end": 33842,
                                  "loc": {
                                    "start": {
                                      "line": 798,
                                      "column": 10
                                    },
                                    "end": {
                                      "line": 798,
                                      "column": 17
                                    }
                                  },
                                  "name": "execute"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 33843,
                                  "end": 33863,
                                  "loc": {
                                    "start": {
                                      "line": 798,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 798,
                                      "column": 38
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 33843,
                                    "end": 33856,
                                    "loc": {
                                      "start": {
                                        "line": 798,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 798,
                                        "column": 31
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 33843,
                                      "end": 33847,
                                      "loc": {
                                        "start": {
                                          "line": 798,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 798,
                                          "column": 22
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 33848,
                                      "end": 33856,
                                      "loc": {
                                        "start": {
                                          "line": 798,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 798,
                                          "column": 31
                                        }
                                      },
                                      "name": "sketcher"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 33857,
                                    "end": 33863,
                                    "loc": {
                                      "start": {
                                        "line": 798,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 798,
                                        "column": 38
                                      }
                                    },
                                    "name": "socket"
                                  },
                                  "computed": false
                                }
                              ]
                            }
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "const",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " return SolveConstraints result after calling updateFromServer",
                          "start": 33634,
                          "end": 33698,
                          "loc": {
                            "start": {
                              "line": 795,
                              "column": 8
                            },
                            "end": {
                              "line": 795,
                              "column": 72
                            }
                          },
                          "range": [
                            33634,
                            33698
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 33875,
                      "end": 33900,
                      "loc": {
                        "start": {
                          "line": 799,
                          "column": 8
                        },
                        "end": {
                          "line": 799,
                          "column": 33
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 33879,
                          "end": 33899,
                          "loc": {
                            "start": {
                              "line": 799,
                              "column": 12
                            },
                            "end": {
                              "line": 799,
                              "column": 32
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 33879,
                            "end": 33883,
                            "loc": {
                              "start": {
                                "line": 799,
                                "column": 12
                              },
                              "end": {
                                "line": 799,
                                "column": 16
                              }
                            },
                            "name": "code"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 33886,
                            "end": 33899,
                            "loc": {
                              "start": {
                                "line": 799,
                                "column": 19
                              },
                              "end": {
                                "line": 799,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 33886,
                              "end": 33896,
                              "loc": {
                                "start": {
                                  "line": 799,
                                  "column": 19
                                },
                                "end": {
                                  "line": 799,
                                  "column": 29
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 33886,
                                "end": 33893,
                                "loc": {
                                  "start": {
                                    "line": 799,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 799,
                                    "column": 26
                                  }
                                },
                                "name": "results"
                              },
                              "property": {
                                "type": "Literal",
                                "start": 33894,
                                "end": 33895,
                                "loc": {
                                  "start": {
                                    "line": 799,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 799,
                                    "column": 28
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              "computed": true
                            },
                            "property": {
                              "type": "Literal",
                              "start": 33897,
                              "end": 33898,
                              "loc": {
                                "start": {
                                  "line": 799,
                                  "column": 30
                                },
                                "end": {
                                  "line": 799,
                                  "column": 31
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "computed": true
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 33910,
                      "end": 33954,
                      "loc": {
                        "start": {
                          "line": 800,
                          "column": 8
                        },
                        "end": {
                          "line": 800,
                          "column": 52
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 33917,
                        "end": 33953,
                        "loc": {
                          "start": {
                            "line": 800,
                            "column": 15
                          },
                          "end": {
                            "line": 800,
                            "column": 51
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 33917,
                          "end": 33947,
                          "loc": {
                            "start": {
                              "line": 800,
                              "column": 15
                            },
                            "end": {
                              "line": 800,
                              "column": 45
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 33917,
                            "end": 33930,
                            "loc": {
                              "start": {
                                "line": 800,
                                "column": 15
                              },
                              "end": {
                                "line": 800,
                                "column": 28
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 33917,
                              "end": 33921,
                              "loc": {
                                "start": {
                                  "line": 800,
                                  "column": 15
                                },
                                "end": {
                                  "line": 800,
                                  "column": 19
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 33922,
                              "end": 33930,
                              "loc": {
                                "start": {
                                  "line": 800,
                                  "column": 20
                                },
                                "end": {
                                  "line": 800,
                                  "column": 28
                                }
                              },
                              "name": "sketcher"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 33931,
                            "end": 33947,
                            "loc": {
                              "start": {
                                "line": 800,
                                "column": 29
                              },
                              "end": {
                                "line": 800,
                                "column": 45
                              }
                            },
                            "name": "checkSolveResult"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 33948,
                            "end": 33952,
                            "loc": {
                              "start": {
                                "line": 800,
                                "column": 46
                              },
                              "end": {
                                "line": 800,
                                "column": 50
                              }
                            },
                            "name": "code"
                          }
                        ]
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " for loop over object or objects, including child points",
                  "start": 33969,
                  "end": 34027,
                  "loc": {
                    "start": {
                      "line": 803,
                      "column": 4
                    },
                    "end": {
                      "line": 803,
                      "column": 62
                    }
                  },
                  "range": [
                    33969,
                    34027
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " if no callback specified, then all the objects are returned in array",
                  "start": 34033,
                  "end": 34104,
                  "loc": {
                    "start": {
                      "line": 804,
                      "column": 4
                    },
                    "end": {
                      "line": 804,
                      "column": 75
                    }
                  },
                  "range": [
                    34033,
                    34104
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 34110,
              "end": 34676,
              "loc": {
                "start": {
                  "line": 805,
                  "column": 4
                },
                "end": {
                  "line": 824,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 34117,
                "end": 34139,
                "loc": {
                  "start": {
                    "line": 805,
                    "column": 11
                  },
                  "end": {
                    "line": 805,
                    "column": 33
                  }
                },
                "name": "ForObjectsWithChildren"
              },
              "static": true,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 34139,
                "end": 34676,
                "loc": {
                  "start": {
                    "line": 805,
                    "column": 33
                  },
                  "end": {
                    "line": 824,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 34140,
                    "end": 34144,
                    "loc": {
                      "start": {
                        "line": 805,
                        "column": 34
                      },
                      "end": {
                        "line": 805,
                        "column": 38
                      }
                    },
                    "name": "objs"
                  },
                  {
                    "type": "Identifier",
                    "start": 34146,
                    "end": 34154,
                    "loc": {
                      "start": {
                        "line": 805,
                        "column": 40
                      },
                      "end": {
                        "line": 805,
                        "column": 48
                      }
                    },
                    "name": "callback"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 34156,
                  "end": 34676,
                  "loc": {
                    "start": {
                      "line": 805,
                      "column": 50
                    },
                    "end": {
                      "line": 824,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 34167,
                      "end": 34190,
                      "loc": {
                        "start": {
                          "line": 806,
                          "column": 8
                        },
                        "end": {
                          "line": 806,
                          "column": 31
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 34171,
                          "end": 34189,
                          "loc": {
                            "start": {
                              "line": 806,
                              "column": 12
                            },
                            "end": {
                              "line": 806,
                              "column": 30
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 34171,
                            "end": 34177,
                            "loc": {
                              "start": {
                                "line": 806,
                                "column": 12
                              },
                              "end": {
                                "line": 806,
                                "column": 18
                              }
                            },
                            "name": "result"
                          },
                          "init": {
                            "type": "Identifier",
                            "start": 34180,
                            "end": 34189,
                            "loc": {
                              "start": {
                                "line": 806,
                                "column": 21
                              },
                              "end": {
                                "line": 806,
                                "column": 30
                              }
                            },
                            "name": "undefined"
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 34200,
                      "end": 34304,
                      "loc": {
                        "start": {
                          "line": 807,
                          "column": 8
                        },
                        "end": {
                          "line": 810,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 34204,
                        "end": 34213,
                        "loc": {
                          "start": {
                            "line": 807,
                            "column": 12
                          },
                          "end": {
                            "line": 807,
                            "column": 21
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 34205,
                          "end": 34213,
                          "loc": {
                            "start": {
                              "line": 807,
                              "column": 13
                            },
                            "end": {
                              "line": 807,
                              "column": 21
                            }
                          },
                          "name": "callback"
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 34215,
                        "end": 34304,
                        "loc": {
                          "start": {
                            "line": 807,
                            "column": 23
                          },
                          "end": {
                            "line": 810,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 34230,
                            "end": 34242,
                            "loc": {
                              "start": {
                                "line": 808,
                                "column": 12
                              },
                              "end": {
                                "line": 808,
                                "column": 24
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 34230,
                              "end": 34241,
                              "loc": {
                                "start": {
                                  "line": 808,
                                  "column": 12
                                },
                                "end": {
                                  "line": 808,
                                  "column": 23
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 34230,
                                "end": 34236,
                                "loc": {
                                  "start": {
                                    "line": 808,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 808,
                                    "column": 18
                                  }
                                },
                                "name": "result"
                              },
                              "right": {
                                "type": "ArrayExpression",
                                "start": 34239,
                                "end": 34241,
                                "loc": {
                                  "start": {
                                    "line": 808,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 808,
                                    "column": 23
                                  }
                                },
                                "elements": []
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 34256,
                            "end": 34293,
                            "loc": {
                              "start": {
                                "line": 809,
                                "column": 12
                              },
                              "end": {
                                "line": 809,
                                "column": 49
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 34256,
                              "end": 34292,
                              "loc": {
                                "start": {
                                  "line": 809,
                                  "column": 12
                                },
                                "end": {
                                  "line": 809,
                                  "column": 48
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 34256,
                                "end": 34264,
                                "loc": {
                                  "start": {
                                    "line": 809,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 809,
                                    "column": 20
                                  }
                                },
                                "name": "callback"
                              },
                              "right": {
                                "type": "ArrowFunctionExpression",
                                "start": 34268,
                                "end": 34291,
                                "loc": {
                                  "start": {
                                    "line": 809,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 809,
                                    "column": 47
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": true,
                                "async": false,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "start": 34268,
                                    "end": 34271,
                                    "loc": {
                                      "start": {
                                        "line": 809,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 809,
                                        "column": 27
                                      }
                                    },
                                    "name": "obj"
                                  }
                                ],
                                "body": {
                                  "type": "CallExpression",
                                  "start": 34275,
                                  "end": 34291,
                                  "loc": {
                                    "start": {
                                      "line": 809,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 809,
                                      "column": 47
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 34275,
                                    "end": 34286,
                                    "loc": {
                                      "start": {
                                        "line": 809,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 809,
                                        "column": 42
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 34275,
                                      "end": 34281,
                                      "loc": {
                                        "start": {
                                          "line": 809,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 809,
                                          "column": 37
                                        }
                                      },
                                      "name": "result"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 34282,
                                      "end": 34286,
                                      "loc": {
                                        "start": {
                                          "line": 809,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 809,
                                          "column": 42
                                        }
                                      },
                                      "name": "push"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 34287,
                                      "end": 34290,
                                      "loc": {
                                        "start": {
                                          "line": 809,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 809,
                                          "column": 46
                                        }
                                      },
                                      "name": "obj"
                                    }
                                  ]
                                },
                                "parenthesizedExpression": true
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 34316,
                      "end": 34339,
                      "loc": {
                        "start": {
                          "line": 812,
                          "column": 8
                        },
                        "end": {
                          "line": 812,
                          "column": 31
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 34316,
                        "end": 34338,
                        "loc": {
                          "start": {
                            "line": 812,
                            "column": 8
                          },
                          "end": {
                            "line": 812,
                            "column": 30
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 34316,
                          "end": 34320,
                          "loc": {
                            "start": {
                              "line": 812,
                              "column": 8
                            },
                            "end": {
                              "line": 812,
                              "column": 12
                            }
                          },
                          "name": "objs"
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 34323,
                          "end": 34338,
                          "loc": {
                            "start": {
                              "line": 812,
                              "column": 15
                            },
                            "end": {
                              "line": 812,
                              "column": 30
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 34323,
                            "end": 34332,
                            "loc": {
                              "start": {
                                "line": 812,
                                "column": 15
                              },
                              "end": {
                                "line": 812,
                                "column": 24
                              }
                            },
                            "object": {
                              "type": "ArrayExpression",
                              "start": 34323,
                              "end": 34325,
                              "loc": {
                                "start": {
                                  "line": 812,
                                  "column": 15
                                },
                                "end": {
                                  "line": 812,
                                  "column": 17
                                }
                              },
                              "elements": []
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 34326,
                              "end": 34332,
                              "loc": {
                                "start": {
                                  "line": 812,
                                  "column": 18
                                },
                                "end": {
                                  "line": 812,
                                  "column": 24
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 34333,
                              "end": 34337,
                              "loc": {
                                "start": {
                                  "line": 812,
                                  "column": 25
                                },
                                "end": {
                                  "line": 812,
                                  "column": 29
                                }
                              },
                              "name": "objs"
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 34349,
                      "end": 34643,
                      "loc": {
                        "start": {
                          "line": 813,
                          "column": 8
                        },
                        "end": {
                          "line": 821,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 34349,
                        "end": 34642,
                        "loc": {
                          "start": {
                            "line": 813,
                            "column": 8
                          },
                          "end": {
                            "line": 821,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 34349,
                          "end": 34361,
                          "loc": {
                            "start": {
                              "line": 813,
                              "column": 8
                            },
                            "end": {
                              "line": 813,
                              "column": 20
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 34349,
                            "end": 34353,
                            "loc": {
                              "start": {
                                "line": 813,
                                "column": 8
                              },
                              "end": {
                                "line": 813,
                                "column": 12
                              }
                            },
                            "name": "objs"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 34354,
                            "end": 34361,
                            "loc": {
                              "start": {
                                "line": 813,
                                "column": 13
                              },
                              "end": {
                                "line": 813,
                                "column": 20
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 34362,
                            "end": 34641,
                            "loc": {
                              "start": {
                                "line": 813,
                                "column": 21
                              },
                              "end": {
                                "line": 821,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 34362,
                                "end": 34365,
                                "loc": {
                                  "start": {
                                    "line": 813,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 813,
                                    "column": 24
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 34369,
                              "end": 34641,
                              "loc": {
                                "start": {
                                  "line": 813,
                                  "column": 28
                                },
                                "end": {
                                  "line": 821,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 34384,
                                  "end": 34401,
                                  "loc": {
                                    "start": {
                                      "line": 814,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 814,
                                      "column": 29
                                    }
                                  },
                                  "test": {
                                    "type": "UnaryExpression",
                                    "start": 34388,
                                    "end": 34392,
                                    "loc": {
                                      "start": {
                                        "line": 814,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 814,
                                        "column": 20
                                      }
                                    },
                                    "operator": "!",
                                    "prefix": true,
                                    "argument": {
                                      "type": "Identifier",
                                      "start": 34389,
                                      "end": 34392,
                                      "loc": {
                                        "start": {
                                          "line": 814,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 814,
                                          "column": 20
                                        }
                                      },
                                      "name": "obj"
                                    }
                                  },
                                  "consequent": {
                                    "type": "ReturnStatement",
                                    "start": 34394,
                                    "end": 34401,
                                    "loc": {
                                      "start": {
                                        "line": 814,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 814,
                                        "column": 29
                                      }
                                    },
                                    "argument": null
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 34415,
                                  "end": 34429,
                                  "loc": {
                                    "start": {
                                      "line": 815,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 815,
                                      "column": 26
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 34415,
                                    "end": 34428,
                                    "loc": {
                                      "start": {
                                        "line": 815,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 815,
                                        "column": 25
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 34415,
                                      "end": 34423,
                                      "loc": {
                                        "start": {
                                          "line": 815,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 815,
                                          "column": 20
                                        }
                                      },
                                      "name": "callback"
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 34424,
                                        "end": 34427,
                                        "loc": {
                                          "start": {
                                            "line": 815,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 815,
                                            "column": 24
                                          }
                                        },
                                        "name": "obj"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 34443,
                                  "end": 34476,
                                  "loc": {
                                    "start": {
                                      "line": 816,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 816,
                                      "column": 45
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 34447,
                                    "end": 34467,
                                    "loc": {
                                      "start": {
                                        "line": 816,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 816,
                                        "column": 36
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 34447,
                                      "end": 34450,
                                      "loc": {
                                        "start": {
                                          "line": 816,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 816,
                                          "column": 19
                                        }
                                      },
                                      "name": "obj"
                                    },
                                    "operator": "instanceof",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 34462,
                                      "end": 34467,
                                      "loc": {
                                        "start": {
                                          "line": 816,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 816,
                                          "column": 36
                                        }
                                      },
                                      "name": "Point"
                                    }
                                  },
                                  "consequent": {
                                    "type": "ReturnStatement",
                                    "start": 34469,
                                    "end": 34476,
                                    "loc": {
                                      "start": {
                                        "line": 816,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 816,
                                        "column": 45
                                      }
                                    },
                                    "argument": null
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 34490,
                                  "end": 34552,
                                  "loc": {
                                    "start": {
                                      "line": 817,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 818,
                                      "column": 45
                                    }
                                  },
                                  "test": {
                                    "type": "MemberExpression",
                                    "start": 34494,
                                    "end": 34504,
                                    "loc": {
                                      "start": {
                                        "line": 817,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 817,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 34494,
                                      "end": 34497,
                                      "loc": {
                                        "start": {
                                          "line": 817,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 817,
                                          "column": 19
                                        }
                                      },
                                      "name": "obj"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 34498,
                                      "end": 34504,
                                      "loc": {
                                        "start": {
                                          "line": 817,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 817,
                                          "column": 26
                                        }
                                      },
                                      "name": "points"
                                    },
                                    "computed": false
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 34523,
                                    "end": 34552,
                                    "loc": {
                                      "start": {
                                        "line": 818,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 818,
                                        "column": 45
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 34523,
                                      "end": 34551,
                                      "loc": {
                                        "start": {
                                          "line": 818,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 818,
                                          "column": 44
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 34523,
                                        "end": 34541,
                                        "loc": {
                                          "start": {
                                            "line": 818,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 818,
                                            "column": 34
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 34523,
                                          "end": 34533,
                                          "loc": {
                                            "start": {
                                              "line": 818,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 818,
                                              "column": 26
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 34523,
                                            "end": 34526,
                                            "loc": {
                                              "start": {
                                                "line": 818,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 818,
                                                "column": 19
                                              }
                                            },
                                            "name": "obj"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 34527,
                                            "end": 34533,
                                            "loc": {
                                              "start": {
                                                "line": 818,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 818,
                                                "column": 26
                                              }
                                            },
                                            "name": "points"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 34534,
                                          "end": 34541,
                                          "loc": {
                                            "start": {
                                              "line": 818,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 818,
                                              "column": 34
                                            }
                                          },
                                          "name": "forEach"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 34542,
                                          "end": 34550,
                                          "loc": {
                                            "start": {
                                              "line": 818,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 818,
                                              "column": 43
                                            }
                                          },
                                          "name": "callback"
                                        }
                                      ]
                                    }
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 34566,
                                  "end": 34630,
                                  "loc": {
                                    "start": {
                                      "line": 819,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 820,
                                      "column": 42
                                    }
                                  },
                                  "test": {
                                    "type": "MemberExpression",
                                    "start": 34570,
                                    "end": 34585,
                                    "loc": {
                                      "start": {
                                        "line": 819,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 819,
                                        "column": 31
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 34570,
                                      "end": 34573,
                                      "loc": {
                                        "start": {
                                          "line": 819,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 819,
                                          "column": 19
                                        }
                                      },
                                      "name": "obj"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 34574,
                                      "end": 34585,
                                      "loc": {
                                        "start": {
                                          "line": 819,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 819,
                                          "column": 31
                                        }
                                      },
                                      "name": "centerPoint"
                                    },
                                    "computed": false
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 34604,
                                    "end": 34630,
                                    "loc": {
                                      "start": {
                                        "line": 820,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 820,
                                        "column": 42
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 34604,
                                      "end": 34629,
                                      "loc": {
                                        "start": {
                                          "line": 820,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 820,
                                          "column": 41
                                        }
                                      },
                                      "callee": {
                                        "type": "Identifier",
                                        "start": 34604,
                                        "end": 34612,
                                        "loc": {
                                          "start": {
                                            "line": 820,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 820,
                                            "column": 24
                                          }
                                        },
                                        "name": "callback"
                                      },
                                      "arguments": [
                                        {
                                          "type": "MemberExpression",
                                          "start": 34613,
                                          "end": 34628,
                                          "loc": {
                                            "start": {
                                              "line": 820,
                                              "column": 25
                                            },
                                            "end": {
                                              "line": 820,
                                              "column": 40
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 34613,
                                            "end": 34616,
                                            "loc": {
                                              "start": {
                                                "line": 820,
                                                "column": 25
                                              },
                                              "end": {
                                                "line": 820,
                                                "column": 28
                                              }
                                            },
                                            "name": "obj"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 34617,
                                            "end": 34628,
                                            "loc": {
                                              "start": {
                                                "line": 820,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 820,
                                                "column": 40
                                              }
                                            },
                                            "name": "centerPoint"
                                          },
                                          "computed": false
                                        }
                                      ]
                                    }
                                  },
                                  "alternate": null
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 34655,
                      "end": 34669,
                      "loc": {
                        "start": {
                          "line": 823,
                          "column": 8
                        },
                        "end": {
                          "line": 823,
                          "column": 22
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 34662,
                        "end": 34668,
                        "loc": {
                          "start": {
                            "line": 823,
                            "column": 15
                          },
                          "end": {
                            "line": 823,
                            "column": 21
                          }
                        },
                        "name": "result"
                      }
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " for loop over object or objects, including child points",
                  "start": 33969,
                  "end": 34027,
                  "loc": {
                    "start": {
                      "line": 803,
                      "column": 4
                    },
                    "end": {
                      "line": 803,
                      "column": 62
                    }
                  },
                  "range": [
                    33969,
                    34027
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " if no callback specified, then all the objects are returned in array",
                  "start": 34033,
                  "end": 34104,
                  "loc": {
                    "start": {
                      "line": 804,
                      "column": 4
                    },
                    "end": {
                      "line": 804,
                      "column": 75
                    }
                  },
                  "range": [
                    34033,
                    34104
                  ]
                }
              ]
            }
          ]
        },
        "leadingComments": [],
        "trailingComments": []
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 34683,
      "end": 34733,
      "loc": {
        "start": {
          "line": 827,
          "column": 0
        },
        "end": {
          "line": 827,
          "column": 50
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 34683,
        "end": 34732,
        "loc": {
          "start": {
            "line": 827,
            "column": 0
          },
          "end": {
            "line": 827,
            "column": 49
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 34683,
          "end": 34723,
          "loc": {
            "start": {
              "line": 827,
              "column": 0
            },
            "end": {
              "line": 827,
              "column": 40
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 34683,
            "end": 34710,
            "loc": {
              "start": {
                "line": 827,
                "column": 0
              },
              "end": {
                "line": 827,
                "column": 27
              }
            },
            "object": {
              "type": "Identifier",
              "start": 34683,
              "end": 34697,
              "loc": {
                "start": {
                  "line": 827,
                  "column": 0
                },
                "end": {
                  "line": 827,
                  "column": 14
                }
              },
              "name": "ClassCadObject"
            },
            "property": {
              "type": "Identifier",
              "start": 34698,
              "end": 34710,
              "loc": {
                "start": {
                  "line": 827,
                  "column": 15
                },
                "end": {
                  "line": 827,
                  "column": 27
                }
              },
              "name": "classMapping"
            },
            "computed": false
          },
          "property": {
            "type": "Literal",
            "start": 34711,
            "end": 34722,
            "loc": {
              "start": {
                "line": 827,
                "column": 28
              },
              "end": {
                "line": 827,
                "column": 39
              }
            },
            "value": "CC_Sketch",
            "rawValue": "CC_Sketch",
            "raw": "'CC_Sketch'"
          },
          "computed": true
        },
        "right": {
          "type": "Identifier",
          "start": 34726,
          "end": 34732,
          "loc": {
            "start": {
              "line": 827,
              "column": 43
            },
            "end": {
              "line": 827,
              "column": 49
            }
          },
          "name": "Sketch"
        }
      }
    }
  ]
}